axios的delete请求遇到的坑

大家在使用axios的delete请求的时候,会不会遇到400错误?后台接收不到delete请求传来的参数?

在使用put和post请求的时候,我们习惯这么写

axios.post(url,{id:1});

axios.put(url,{id:1});

在post和put请求中,发送参数的格式 {data:data} ,这样丝毫没有问题

但在delete请求里面,这种参数请求就出现错误了

我透,就这玩意折腾了我一早上,在网上查了资料终于明白了。

咱们先看这几个请求的源码

看到没,post和put请求的参数是

url data config

而delete请求,只有

url config

也就是这样,post和put请求能直接写这样的格式发送参数

{data:data}

但delete呢?再看看config的源码

里面有一个data!这些是不是明白了?

是的,delete请求不能直接在data这个参数写要发送的参数,只能在config这个参数里面写

那如果在config里面写,那就得这样

data{data:data}

没错,就是得在外面再套一层data

这样就没问题啦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章