私はDjangoの残りFrameworkのドキュメントでこれを見つけた:RESTフレームワークでDjango Rest Framework SessionAuthenticationが認証されていないユーザにcsrfを必要としないのはなぜですか?
CSRFの検証が原因同じビューにセッションおよび非セッションベースの認証の両方をサポートする必要があるため、標準のDjangoには少し異なる動作します。これは、認証要求はCSRFトークンを必要とすることを意味し、CSRFは、これらの認証クラスを使用するデフォルトのDRFでは
トークンせずに匿名の要求を送信することがあります。両方のセッションをサポートするには、問題になり
'DEFAULT_AUTHENTICATION_CLASSES'= (
'rest_framework.authentication.SessionAuthentication',
'rest_framework.authentication.BasicAuthentication'
),
何と認証されていないユーザ(SessionAuthenticationクラスを使用)のcsrfトークンをチェックしながら非セッションベース認証