Django 休息框架 - 添加到 views.obtain_auth_token

django rest framework - adding to views.obtain_auth_token

我已经使用 django rest 框架实现了令牌身份验证,我可以 post 用户名和密码 /api-token-auth/ 并获取令牌。

url(r'^api-token-auth/', token_views.obtain_auth_token)

除了令牌之外,我还想获取与 returned 令牌相关的 User 对象。

如何 override/add 此视图以及 return 实际的用户对象?

您可以在这里找到相关视图:

https://github.com/tomchristie/django-rest-framework/blob/master/rest_framework/authtoken/views.py#L21

假设您已经创建了某种用户序列化程序,您基本上可以在那里获取 user 实例并将其推送到您的 UserSerializer 中。然后将其添加到响应中,如下所示。

... 
user_serializer = UserSerializer(user)
return Response({'token': token.key, 'user': user_serializer.data})