问题描述
前端同事反馈,调用REST API 的 delete 方法时,返回403 跨域错误。。。
问题重现
使用postman模拟前端测试。直接调用接口,返回如下错误:
{ "detail": "Authentication credentials were not provided." }
在网上搜罗了一下,发现需要在http header 里面放入X-CSRFToken, 配置如下图所示:
修改配置后,再次调用接口,返回成功!!
分析回溯
在确定服务端没有问题后,与前端同事一起review了一下代码,发现使用axios时,delete 和 post 、put 的参数不一样,post、put都有三个参数,分别为url、data还有config,而delete只有两个参数,第一个是url,第二个是config。
修改前端代码后,一切恢复正常~
参考
https://blog.csdn.net/qq383366204/article/details/80268007
https://blog.csdn.net/weixin_43336281/article/details/105956109