【发布时间】:2020-04-07 08:13:29
【问题描述】:
我使用 Django REST 和 Djoser 作为我的身份验证服务。但是,当向 djoser auth 端点发出 post 请求时,例如.../auth/token/login,我得到的唯一回复是auth_token: xxxxx
例如,如果我发出成功的发布请求,例如:
{
"username": "joe@gmail.com",
"password": "test12345"
}
我的回答是
"auth_token": "XXXXXXXX"
但我想检索的不仅仅是令牌,例如
"auth_token": "XXXXXXXX",
"user_id": 8
你知道如何做到这一点吗?
【问题讨论】:
-
问题有点不清楚,你想解决什么问题?由于您发送用户名和密码来获取令牌,您真的需要/想要在响应中取回它们吗?
-
基本上,当我使用用户名和密码向
.../auth/token/login发出发布请求时 - 如果该密码和用户名有效,我会以"auth_token": "xxxxx"的形式回复。我想回复"auth_token": "xxxx", "user_id": 8之类的东西 -
您需要自定义 Djoser 使用的类。一个很好的例子已经在 Django 文档中:django-rest-framework.org/api-guide/authentication/…,请参阅 CustomAuthToken(ObtainAuthToken) 类示例。
标签: django django-rest-framework djoser