我在ReactJS中编程时使用Axios,我假装向服务器发送DELETE请求。
要做到这一点,我需要头文件:
headers: {
'Authorization': ...
}
而身体是由
var payload = {
"username": ..
}
我一直在网上搜索,只发现DELETE方法需要一个“参数”,不接受“数据”。
我一直想这样发送
axios.delete(URL, payload, header);
甚至
axios.delete(URL, {params: payload}, header);
但似乎什么都不管用……
有人能告诉我,如果这是可能的(我假设是)发送一个删除请求与头部和主体,以及如何这样做?
实际上,axios.delete支持请求体。
它接受两个参数:一个URL和一个可选配置。这是……
axios.delete(url: string, config?: AxiosRequestConfig | undefined)
您可以通过以下方法设置删除请求的响应体:
let config = {
headers: {
Authorization: authToken
},
data: { //! Take note of the `data` keyword. This is the request body.
key: value,
... //! more `key: value` pairs as desired.
}
}
axios.delete(url, config)
我希望这能帮助到一些人!
对于那些尝试了以上所有方法但仍然没有看到请求的有效负载的人-请确保您有:
"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