2016-09-26 6 views
1

私はDjangoの初心者です。ここからJWTトークンについて学習しています。DjangoでJWTトークンで認証する

http://getblimp.github.io/django-rest-framework-jwt/#rest-framework-jwt-auth

私はすでに私のsettings.pyに設定しています。

REST_FRAMEWORK = { 
    'DEFAULT_AUTHENTICATION_CLASSES': 
     (
     'rest_framework.authentication.SessionAuthentication', 
     'rest_framework.authentication.BasicAuthentication', 
     'rest_framework_jwt.authentication.JSONWebTokenAuthentication', 
     ), 

    'DEFAULT_MODEL_SERIALIZER_CLASS': 
     'rest_framework.serializers.ModelSerializer', 

    'DEFAULT_PERMISSION_CLASSES': 
    (
    'rest_framework.permissions.IsAuthenticated', 
     ) 
} 

私がカールした場合、私は実際に私のトークンを取り戻します。

curl -X POST -d "username=khant&password=khant" http://127.0.0.1:8000/api-token-auth/ 

しかし、私は私の保護されたURLにアクセスしたとき、私は、Webからアクセスするときに、

curl -H "Authorization: JWT eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImtoYW50IiwidXNlcl9pZCI6OCwiZW1haWwiOiJraGFudEBnbWFpbC5jb20iLCJleHAiOjE0NzQ5MDQxNTJ9.jaZ3HwsXjx7Bk2ol5UdeE8UUlq4OEGCbnb1T8vDhO_w" http://127.0.0.1:8000/dialogue_dialoguemine/ 

それは常にこれを言います。 Localhostは私にとって大丈夫です。

{ "詳細": "認証資格情報は提供されませんでした。"}私の保護されたURLに

は、私は照会するシンプルなAPIを記述します。これを解決する方法を知ってもいいですか?

class DialogueMineView(generics.ListAPIView): 
    permission_classes = (IsAuthenticated,) 

    serializer_class = DialogueSerializer 
    paginate_by = 2 

    def get_queryset(self): 

     user = self.request.user 
     return Dialogue.objects.filter(owner=user) 
+0

、カールにもう一度入力したり、コードを確認してください。 – Windsooon

+0

私はまだ立ち往生しています。どのようにトラブルシューティングを行うべきですか? –

答えて

0

私は今知っています。私の場合、私は大丈夫ではない。私はこのリンクからチェックします。

Django Rest Framework - Authentication credentials were not provided

それは私がApacheのディレクトリに私のhttpd.confで

WSGIPassAuthorization On 

を追加する必要が言います。今は大丈夫です。あなたは右のすべてをした

+0

WSGIPassAuthorizationをどこに正確に追加しますか? –

関連する問題