我在ReactJS中编程时使用Axios,我假装向服务器发送DELETE请求。
要做到这一点,我需要头文件:
headers: {
'Authorization': ...
}
而身体是由
var payload = {
"username": ..
}
我一直在网上搜索,只发现DELETE方法需要一个“参数”,不接受“数据”。
我一直想这样发送
axios.delete(URL, payload, header);
甚至
axios.delete(URL, {params: payload}, header);
但似乎什么都不管用……
有人能告诉我,如果这是可能的(我假设是)发送一个删除请求与头部和主体,以及如何这样做?
Axios DELETE请求支持与POST请求类似的功能,但格式不同。
DELETE请求有效负载示例代码:
axios.delete(url, { data: { hello: "world" }, headers: { "Authorization": "Bearer_token_here" } });
POST请求有效负载示例代码:
axios.post(url, { hello: "world" }, { headers: { "Authorization": "Bearer_token_here" } });
注意{hello: "world"}以不同的方式配置,但都执行相同的功能。
Axios DELETE请求支持与POST请求类似的功能,但格式不同。
DELETE请求有效负载示例代码:
axios.delete(url, { data: { hello: "world" }, headers: { "Authorization": "Bearer_token_here" } });
POST请求有效负载示例代码:
axios.post(url, { hello: "world" }, { headers: { "Authorization": "Bearer_token_here" } });
注意{hello: "world"}以不同的方式配置,但都执行相同的功能。
对于那些尝试了以上所有方法但仍然没有看到请求的有效负载的人-请确保您有:
"axios": "^0.21.1" (not 0.20.0)
那么,上面的解决方案就起作用了
axios.delete("URL", {
headers: {
Authorization: `Bearer ${token}`,
},
data: {
var1: "var1",
var2: "var2"
},
})
你可以访问有效载荷
req.body.var1, req.body.var2
问题在于:
https://github.com/axios/axios/issues/3335