【发布时间】:2020-01-16 08:22:32
【问题描述】:
我尝试在我的 Django 项目中调用 REST api 端点。到目前为止,它在使用 curl,邮递员时工作。当我尝试使用 Axios 在我的 django 模板前端调用它时遇到问题。 当我检查网络选项卡时,请求返回 401,同时发送参数和令牌。
axios.get(url,{headers: {'Authorization': 'Token 0ca677330f947335a72572bdbdfe305ae7dd8ba6'},params:params})
我也试过
return axios({
method: 'get',
url: url,
headers: {
'Authorization': 'Token 0ca677330f947335a72572bdbdfe305ae7dd8ba6'
},
params: params
})
仍然得到 401。
有什么想法吗?
更新
现在我找出了原因。当我在谷歌隐身模式下尝试时,它可以工作,我可以通过使用其他浏览器(如 Firefox)来确认这一点,现在我更新的问题是,如何删除或刷新以删除缓存?我通过删除应用程序选项卡中的缓存尝试了 chrome 的开发者控制台中的所有内容
【问题讨论】:
-
301 是一个重定向,你会被重定向到哪里?
-
401 是未经授权的错误,因此您的令牌可能已过期或不正确。
-
@adnanmuttaleb 如前所述,它适用于 curl 或 postman。
-
实际上,我们的一个应用消费者使用原生 curl 运行良好。我认为如果访问 tru Javascript 需要特定的配置。我已经尝试过 Jquery 方式,仍然得到 401
-
你得到答案了吗,我遇到了同样的问题。
标签: django vue.js django-rest-framework axios