如何解决Django - 为什么我从 Axios/AJAX 登录后没有通过身份验证?
我正在构建一个单独的 VueJS/Django 应用程序,其中 Django 将使用 JSON 与 Vue 前端通信。为了能够使用标准会话身份验证和 django-allauth,我将在同一服务器和同一端口上部署这两个应用程序。
这是我的问题:在我使用 Axios 从 Vue 应用程序登录后,我没有收到任何响应,但我注意到在数据库上创建了一个会话,所以我假设我正在登录. 但是如果我尝试到达打印 request.user.is_authenticated
的端点,我得到 False
,而 request.user
返回 Anonymous
,所以我不再登录了。我该如何解决这个问题?
这是我的 Axios 代码:
bodyFormData.append('login','root');
bodyFormData.append('password','test');
axios({
method: "post",url: "http://127.0.0.1:8000/accounts/login/",data: bodyFormData,withCredentials: true,headers: { "Content-Type": "application/json" },})
.then(function (response) {
//handle success
console.log(response);
})
.catch(function (response) {
//handle error
console.log(response);
});
我认为 Django-Allauth 在其 url 上支持 AJAX 身份验证,但我不明白如何让它返回一些东西,以及一旦我提交 Axios 表单,我的 Vue 应用程序如何保持身份验证。欢迎任何建议!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。