2017-10-20 7 views
1

OPTIONSリクエストを実行したときにJWTをチェックしないでトークンを要求する方法を教えてください。DRF JWT OPTIONSリクエストでトークンを必要としない

私は自分options(self, request, *args, **kwargs)メソッドを定義しているが、限りpermission_classes = [isAuthenticated]が有効になっているとして、ユーザーがログイン資格情報を提供するように求めている...

我々が使用しているAPIは、DRFとの対話に反応が関係していますヘッダーを含まないOPTION要求。それは200コードを取得しない場合は、サーバーへの実際の要求を実行しません...

答えて

1

私は最も簡単な方法はcustom permissionsを宣言して(permissions.pyファイル内で)使用すると思う:

from rest_framework import permissions 

class IsAuthenticated(permissions.IsAuthenticated): 

    def has_permission(self, request, view): 
     if request.method == 'OPTIONS': 
      return True 
     return super(IsAuthenticated, self).has_permission(request, view) 

と設定でOPTION-リクエストにトークンがある場合...

+0

JWTはまだチェックし、このクラスにDEFAULT_AUTHENTICATION_CLASSESを変更... –

+0

はエラーメッセージをしてください提供し、私はあなたの正しい方法を考えます'JSONWebTokenAuthentication' [get_jwt_valueメソッド]をオーバーライドします(https://github.com/GetBlimp/django-rest-framework-jwt/blob/master/rest_framewor k_jwt/authentication.py#L81) –

+0

エラーコードはありません。「詳細」の401応答が表示されます。「認証情報が提供されていません」 JWTから。 –

関連する問題