相同的令牌在Django中收到令牌请求

时间:2019-01-02 10:56:46

标签: django python-3.x django-rest-framework django-rest-auth

嗨,我正在使用Django rest-framework,我想实现基于令牌的身份验证, 我正在使用基本的其余框架令牌认证模块。

,但它在每个请求上都返回相同的令牌。 ex(87d97bb2df56e39c12b38131087bcfd232720d9a),我在发送到服务器的每个请求中都得到了这个字符串。

我的 setting.py 文件

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',

'restApp2', # Local Apps (My project's apps)
'rest_framework',
'rest_framework.authtoken',
'rest_auth',
]

REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': [
    'rest_framework.authentication.TokenAuthentication',  # <-- And here
],
}

urls.py文件

from django.contrib import admin
from django.urls import path, include
from restApp2 import views
from rest_framework.authtoken.views import obtain_auth_token

urlpatterns = [
    path('admin/', admin.site.urls),
    path('hello/', views.HelloView.as_view(), name='hello'),
    path('api-token-auth/', obtain_auth_token, name='api_token_auth'),  # <-- And here
    ]

urlpatterns += [
    path('accounts/', include('django.contrib.auth.urls')),
]

我正在使用 POSTMON 中的post方法调用以下网址。

POST http://localhost:7070/rest-auth/login/

作为回应,我得到了

87d97bb2df56e39c12b38131087bcfd232720d9a.

但是我想在新请求上使用不同的令牌。

请帮助我,谢谢

1 个答案:

答案 0 :(得分:2)

如果您查看obtain_auth_token视图,则该视图要么获取现有令牌,要么如果数据库中没有该用户的令牌,则创建新的令牌。

如果每次登录都需要新令牌,则注销后删除以前的令牌。 django rest framework - token authentication logout