【发布时间】:2018-01-29 02:54:08
【问题描述】:
我目前正在使用 Django-rest-framework-social-oauth2,它是转换令牌端点。我从 Facebook 将用户令牌与请求一起发送到该端点,该端点在成功时响应以下数据:
{
"access_token": "************",
"token_type": "Bearer",
"expires_in": 36000,
"refresh_token": "************",
"scope": "read write"
}
但是,我也想获取经过身份验证的用户的 id,所以我尝试在自定义视图中使用 request.user,但它总是返回 AnonymousUser。
class SocialView(ConvertTokenView):
def post(self, request, *args, **kwargs):
response = super(SocialView, self).post(request, *args, **kwargs)
编辑:
我找到了一种方法,我可以通过响应中的 access_token 检索用户。
user = AccessToken.objects.get(token=response.data['access_token'])
但我不确定这样做是否正确?
【问题讨论】:
-
好吧,我找到了一种方法,并使用响应
user = AccessToken.objects.get(token=response.data['access_token'])中的 access_token 检索了用户,但不确定它是否正确?
标签: python django django-rest-framework django-authentication