Ax ios Запрос GET отправляет пустое req.body на сервер - PullRequest
0 голосов
/ 09 июля 2020

Я пытаюсь сделать запрос GET в своем приложении React, но Ax ios по какой-то причине отправляет пустое тело запроса. Я знаю, что (скорее всего) в бэкэнде все в порядке, так как я могу выполнять запросы с помощью Insomnia. До сих пор я пробовал следующее, и ни один из них, похоже, не работал:

const response = await axios.get(URL, { email })

const response = await axios({
    method: "get",
    url: URL,
    data: { email }
})

Я использую промежуточное ПО express. json () в бэкэнде.

1 Ответ

1 голос
/ 09 июля 2020

Из RF C 7231

Полезная нагрузка в сообщении запроса GET не имеет определенной семантики; отправка тела полезной нагрузки в запросе GET может привести к тому, что некоторые существующие реализации отклонят запрос.

Поэтому не полагайтесь на данные тела для запроса GET и используйте соответствующий метод HTTP, например POST, PUT и т. д. c .

Более того, если вы хотите отправить параметры запроса с вашим запросом GET, оба фрагмента кода, которыми вы поделились выше, не будут работать. Вместо этого сделайте это, как показано ниже.

// using get method
const response = await axios.get(URL, {
    params: {
      ID: 12345
    }
  });


// using Axios API
const response = await axios({
    method: "get",
    url: URL,
    params: {
      ID: 12345
    }
});
...