Django/Vue项目登出后重登,请求方法被附加负载内容
Axios Appends Request Payload to Request Method After Logout & Immediate Re-login
我维护着一个用于快速搭建其他项目的基础用户管理模板项目:前端基于Vue CLI 3构建,后端采用Django + Django REST Framework + Django REST Auth技术栈。当前默认使用SQLite数据库,切换到MySQL、PostgreSQL等其他数据库也很便捷。完整项目仓库地址:https://github.com/JVP3122/user-project
最近遇到了一个非常诡异的异常问题:当用户登出网站后,直接在同一页面发起重新登录请求时,Axios似乎会把请求负载(payload)追加到请求方法的开头。举个例子:
- 正常登录请求应该是
POST方法携带{"USERNAME":"TEST","PASSWORD":"PASSWORD"}的负载 - 但登出后第一次尝试登录时,请求变成了
{}POST - 再次尝试登录,请求又变成了
{"USERNAME":"TEST","PASSWORD":"PASSWORD"}POST
对应的异常请求截图如下:
我已经尝试排查了以下方向,但始终没能定位到问题根源:
- 检查并调试了Axios请求拦截器的配置逻辑
- 查看了Django REST Framework源码中的
dispatch方法,确认后端请求解析环节没有异常
实在找不到解决思路了,恳请各位技术大佬帮忙分析一下这个问题的原因,以及可能的解决办法!
内容的提问来源于stack exchange,提问作者Jeff
相关产品推荐
相关产品推荐

