以前我使用的是django-rest-auth包,当响应response.data.key中的用户log in和这个auth token或key以authentication auth的形式调用api时,我正在获取response.data.key。
django-rest-auth前情提要
"/rest-auth/login/"正在以auth token的形式获取auth token,并且我已经将其存储在cookie中供以后使用。
.get("/rest-auth/user/", {
headers: {
"Content-Type": "application/json",
Authorization: "Token " + response.data.key + "",
},
})它是用来获取用户信息的,也是在其他api调用中使用时通过将其设置为
Authorization: "Token " + response.data.key + ""但是现在,我使用的是dj-rest-auth包而不是django-rest-auth,并将我的urls移到
/dj-rest-auth/login我没有得到任何key或auth token,我可以使用authorization在头。
.get("/dj-rest-auth/user/", {
headers: {
"Content-Type": "application/json",
Authorization: "Token " + response.data.? + "",
},
})它不起作用了,因为现在我得到了access_token,refresh_token和user info。我尝试在头文件中使用access_token和refresh_token作为authorization,但是它不起作用,因为当用户log in时,没有得到key或auth token的响应
注意:django-rest-auth不再被维护,dj-rest-auth是从上一个分叉而来的,并且具有更多的功能(这就是我切换的原因)。
如何通过使用auth token包获得dj-rest-auth或key,以便在API调用授权的header中使用它?
发布于 2021-06-18 08:27:24
检查您的没有在您的设置中有一个REST_USE_JWT = True。该设置将启用JWT身份验证方案,而不是基于(默认)令牌的认证方案。
发布于 2022-07-04 16:05:55
https://stackoverflow.com/questions/68031337
复制相似问题