4

django rest_framework_jwtを使用しようとしています。私はトークンを生成することができますが、私が試して保護されたビューにヘッダーで送信すると、 '認証資格情報が提供されませんでした。'というメッセージが表示されます。djangorestframework-jwtで認証資格情報が提供されていません

私が送りますヘッダーの形式は次のとおりです。私はあなたを言うだろうdocsを見てから

"Authorization": "Token SomeRandomToken" 

settings.py

INSTALLED_APPS = [ 
     ... 
    rest_framework.authtoken 
] 

REST_FRAMEWORK = { 
    'DEFAULT_AUTHENTICATION_CLASSES': (
     'rest_framework.authentication.TokenAuthentication', 
     'rest_framework_jwt.authentication.JSONWebTokenAuthentication', 
    ), 
    'DEFAULT_PERMISSION_CLASSES': (
     'rest_framework.permissions.IsAuthenticated', 
    ), 
} 

views.py

class UserList(mixins.ListModelMixin, 
       mixins.CreateModelMixin, 
       generics.GenericAPIView): 
    permission_classes = (permissions.IsAuthenticated,) 
    authentication_classes = (JSONWebTokenAuthentication,) 
    queryset = User.objects.all() 
    serializer_class = UserSerializer 

答えて

4

からデフォルトのTokenAuthenticationを削除する必要があります

'DEFAULT_AUTHENTICATION_CLASSES': (
     'rest_framework_jwt.authentication.JSONWebTokenAuthentication', 
    ), 

また、ヘッダには、異なるフォーマットがあるようです:あなたはAuthorization: JWT <your_token>ヘッダを含まなければならない保護されたAPIのURLにアクセスするために、今すぐ

を。

+0

2つのドキュメントが混在しています。ヘッダーを修正して問題を修正しました。ありがとう – Mantis

関連する問題