Когда объект отправляется вместе с запросом get / post, экспресс возвращает пустой объект для req.body - PullRequest
1 голос
/ 02 апреля 2019

Когда я отправляю объект в качестве параметра моего сообщения или экспресс-запрос на получение, кажется, что он его не получает

Я пытался получать и отправлять запросы как на внешнем сервере, так и на сервере.Все зависимости работают нормально (body-parser и т.1012 *

req.body - пустой объект.req.data, все req.params не определены

Ответы [ 3 ]

1 голос
/ 02 апреля 2019

GET запрос поддерживает только параметры запроса. axios (а также любая из оболочек fetch или XMLHTTPRequest, например superagent) должны преобразовать ваш объект в строку запроса.

Попробуйте использовать req.query, чтобы получить параметры запроса. Вот express документы об этом.

0 голосов
/ 02 апреля 2019

Back-End должен быть как

videoCommentsRoutes.route('/comment/:pauseTime').get(function (req, res) {
    console.log(req.params.pauseTime);
})

или

videoCommentsRoutes.route('/comment').get(function (req, res) {
        console.log(req.query.pauseTime);
    })

Входящий вызов как

axios.get('http://localhost:4000/videoComments/comment', {params:{pauseTime: 10}})
0 голосов
/ 02 апреля 2019

Тело заявки доступно только на post как глаголы.Если вы хотите отправить данные через get, добавьте их в URL.Или используйте axios.post.

axios.get('http://localhost:4000/videoComments/comment/' + Object.stringfy({pauseTime: 10})

или

axios.post('http://localhost:4000/videoComments/comment', {data:{pauseTime: 10}})
...