Как отправить и прочитать объект карты в API nodejs - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь отправить объект карты из моего углового интерфейса в бэкэнд-API nodejs, но не могу проанализировать и прочитать то же самое в бэкэнде.

Ниже приводится мой API -

router.get('/updateRecords/:list', (req, res, next) => {
    console.log('***' + req.params.list);
});

Вот как я пытаюсь отправить объект на него -

updateItems(list) {
    return this.httpClient.get('http://localhost:3000/updateRecords/' + list)
    .pipe(
      catchError(err => this.handleError(err))
    );
  }

Я не могу прочитать объект в моем updateRecords API на серверной части. console.log над отпечатками Object object.

Если я попытался использовать forEach для объекта списка в updateRecords, он начинает выдавать внутреннюю ошибку сервера. У объекта карты есть пары ключ-значение, которые я могу напечатать в консоли на интерфейсе пользователя перед отправкой.

1 Ответ

0 голосов
/ 17 мая 2019

У вас должен быть анализатор тела , и для доступа к объекту из узла вы можете использовать

req.body.list

не req.params.list

req.params.list должен получить параметры запроса, а не объект запроса

app.get('/user/:id', function(req, res) {
  res.send('user ' + req.params.id);
});

Вы должны использовать post, чтобы отправить список на сервер, а не получить

И ваше угловое приложение должно быть изменено на

return this.httpClient.post('http://localhost:3000/updateRecords', list)

Edit: узел js должен измениться на

router.post('/updateRecords', (req, res, next) => {
    console.log(req.body.list);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...