http://django-rest-framework.org/api-guide/exceptions.htmlを参照するカスタム例外を作成しました。
私は独自の認証バックエンドを持っていることを知っておいてください。したがって、rest_framework の認証モジュールは使用していません。
認証エラーの場合、例外から送信されるレスポンスに「WWW-Authenticate: Token」ヘッダーを追加したいと考えています。
どんなアイデアもとても役に立ちます。
アップデート:
ありがとう@Pathétique、これが私がやったことです。
- BaseView という名前の基本ビュー クラスを用意します。
-handle_exception メソッドをオーバーライドして、適切なヘッダーを設定します。私の場合は「WWW-Authenticate」です。
コードは次のとおりです。
class BaseView(APIView):
def handle_exception(self, exc):
if isinstance(exc, MYEXCEPTION):
self.headers['WWW-Authenticate'] = "Token"
return Response({'detail': exc.detail,
status=exc.status_code, exception=True)
あなたの考え?