我试图在我的React应用程序中发出GET请求,但是Axios出于某种原因似乎发送了一个空的请求正文。我知道后端(最有可能)没有错,因为我可以使用Insomnia完美地提出请求。到目前为止,我已经尝试了以下方法,但似乎都不起作用:
const response = await axios.get(URL, { email })
const response = await axios({
method: "get",
url: URL,
data: { email }
})
我在后端中使用express.json()中间件。
答案 0 :(得分:2)
GET请求消息中的有效载荷没有定义的语义; 在GET请求上发送有效内容正文可能会导致一些现有内容 拒绝请求的实现。
因此不要依赖正文数据来进行GET请求,而应使用适当的HTTP方法(如POST,PUT等)。
此外,如果您想随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
}
});