(401错误)安装dj-rest-auth并从user表中删除用户后,服务器一直向所有端点返回401错误



我正在尝试使用dj-rest-auth登录/连接社交帐户。我使用邮差来测试api请求。我是根据dj-rest-auth文档安装的。在我从用户表中删除一个用户之前,我一直工作得很顺利。

我的测试过程步骤:

  1. dj-rest-auth/login [user 1]凭据)→得到正确的结果[user 1]
  2. delete [user 1] in DB
  3. dj-rest-auth/login [user 1 credential] ->用户未找到[401 unauthorize]
  4. dj-rest-auth/login [user 2]凭据)→user not found [401 unauthorize] (user 2 exists in table))
  5. 所有其他api get 401错误(user not found [401 unauthorize])

我需要为这种情况添加一些设置吗?我不知道删除的用户如何影响所有其他api

请告诉我。谢谢你。

在我删除(JWT_AUTH_COOKIE = 'auth')后解决。

我认为你需要在settings.py

中添加这些设置
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'rest_framework.authtoken', # this
'dj_rest_auth', # this
'myapp',
]

REST_USE_JWT = True # this (apply JWT auth)
JWT_AUTH_COOKIE = 'jwt-auth' # this

检查项目url .py

中的设置
from django.contrib import admin
from django.urls import path,include
from django.urls import path
urlpatterns = [
path("", include("myapp.urls")),
path('admin/', admin.site.urls),
path('', include('dj_rest_auth.urls')), # this
]

如果仍然出现错误,添加

REST_FRAMEWORK = {

'DEFAULT_AUTHENTICATION_CLASSES': (

'dj_rest_auth.jwt_auth.JWTCookieAuthentication',
)

}

相关内容

  • 没有找到相关文章

最新更新