Django无法处理HTTP PUT/DELETE请求

后端API使用的框架是rest framework,前端通过GET获取列表,通过POST添加数据都没有问题

但是通过DELETE方法进行删除操作的时候,有报错:

image.png

奇怪,cookie里明明已经有了csrf的token,但是DELET方法好像就是识别不到,因而接口直接返回403

查了下资料:


后端的解决方法暂时没找到好用的办法,前端处理这种情况的话要在请求头里加csrftoken:

export async function removeExport(params) {
return request('/api/collector/', {
method: 'DELETE',
body: {
...params,
method: 'delete',
},
headers:{
"X-CSRFToken": Cookies.get('csrftoken')
}
});
}

这样后端就可以正常拿到前端带过来的csrftoken认证

猜你喜欢

转载自blog.51cto.com/13520772/2466289
今日推荐