Примите запрос POST с другого веб-сайта в Angular Application - PullRequest
0 голосов
/ 18 июня 2019

Я хочу принять почтовый запрос к моей угловой заявке из другого приложения.

Обычно они отправляют список идентификаторов клиентов в виде полезной нагрузки POST, и я должен обработать его в своем угловом приложении и визуализировать GUI.

Я попробовал следующий метод app.post в app.js, но выдает ошибку «Cannot do POST»

app.post('/customer', function (req, res) {
    console.log(req.body);
});

Это немного неловкое требование, так как Angular является платформой JavaScript и не принимает пост-запрос, потому что пост-запрос должен обрабатываться только на стороне сервера, а не на стороне клиента.

Но есть ли какой-нибудь обходной путь, например, принять почтовый запрос в Node JS и отправить в угловое приложение и визуализировать пользовательский интерфейс? Может быть, глупая идея, так что нужна идея или обойти хотя бы.

Редактировать: = Больше информации

У меня есть приложение Node JS, которое предназначено главным образом для получения данных в реальном времени через socket.io.

Ответы [ 2 ]

0 голосов
/ 18 июня 2019

Ну, Angular это Front-end framework.Вы не можете принять запрос POST от angualar.Но вы можете достичь этого, используя любой серверный сервис, такой как nodejs или java. Вы можете использовать nodejs для того же самого. 1. Создайте на стороне сервера экспресс или любую другую инфраструктуру в nodejs.2. Затем ваш клиент должен отправить свой идентификатор пользователя или другие данные на этот сервер.3. Используйте базу данных, такую ​​как mongodb, для хранения данных.4. Затем, по крайней мере, вам нужно получить данные с вашего сервера, используя запрос GET.Это просто.

Как вы сказали в конце, у вас есть приложение nodejs с socket.io, хорошо, что вы можете получать живые данные, слушая события, генерируемые socket.io, когда ваш клиент публикует данные,Затем вы можете показать эти данные в вашем угловом приложении.Это может быть выполнено с помощью socket.io-client в angular.Но помните, что вы должны отправлять GET-запрос на сервер, чтобы снова получать данные из базы данных (если вы их храните) каждый раз, когда вы перезапускаете приложение, так как angular - это только интерфейсная среда.Надеюсь, это поможет вам.Вы можете оставить комментарий, если у вас возникнут вопросы.Я буду рад помочь!

0 голосов
/ 18 июня 2019

Да, вам нужен серверный сервер для получения запроса (GET или POST), например, express.js.Если вы используете один и тот же сервер для Angular и Express, вы делаете POST для localhost: 3000 / api / customer, и express ответит JSON или чем-то еще.

Angular на стороне клиента, поэтому POST приходит с клиентского компьютера.Вам не нужно беспокоиться о том, на какого клиента вам нужно ответить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...