Python Django Rest框架JWT“;未提供身份验证凭据。";}
我正在尝试编写一个使用JWT令牌进行身份验证的简单API 我的Python Django Rest框架JWT“;未提供身份验证凭据。";},python,django,authentication,jwt,Python,Django,Authentication,Jwt,我正在尝试编写一个使用JWT令牌进行身份验证的简单API 我的设置.py: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 're
设置.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 = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
'rest_framework.permissions.IsAdminUser'
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
'rest_framework.authentication.SessionAuthentication',
'rest_framework.authentication.BasicAuthentication',
),
'PAGE_SIZE': 10
}
我的观点是这样的:
class ExampleView(APIView):
permission_classes = (IsAuthenticated,)
authentication_classes = (JSONWebTokenAuthentication,)
def get(self, request, format=None):
return JsonResponse({"username":str(request.user)})
这真的没什么用,但我甚至都没到那里。我已在文档中使用url(r'^api Token auth/,获取\u JWT\u Token)
注册了JWT令牌提供程序,并在调用此端点时收到一个令牌
但是,当我随后针对我的APIView(其中包含头Authorization:JWT
发出请求时,我总是收到以下错误:
[Response]:403[Data]:{“detail”:“未提供身份验证凭据”。}
我遗漏了什么?提前感谢!如果您使用apache作为web服务器,请在apache
httpd.conf
文件中添加以下内容:
WSGIPassAuthorization On
这对我很有效。您用来调用视图的令牌无效吗?不,我刚刚收到它,当我对令牌运行请求时,它也是有效的endpoint@JoSauderGH你能克服这个问题吗?我面临着同样的问题,我不知道出路。