CSRF Ausgenommener Fehler - APIView csrf django rest framework

8

Ich habe den folgenden Code:

Das Problem ist, wenn ich versuche auf Benutzer-Login zuzugreifen / erhalte ich einen Fehler: "CSRF fehlgeschlagen: CSRF-Cookie nicht festgelegt."

Was kann ich tun?

Ich benutze das Django-Rest-Framework.

%Vor%     
user2237822 11.05.2013, 21:12
quelle

3 Antworten

14

Ich nehme an, dass Sie das django rest framework SessionBackend verwenden. Dieses Backend führt eine implizite CSRF-Prüfung durch

Sie können dies vermeiden durch:

%Vor%

Und legen Sie dies als authentication_classes in Ihrer Ansicht fest

%Vor%     
maersu 02.07.2013 11:12
quelle
9

Der csrf-Check in SessionAuthentication ist eigentlich besser:

%Vor%     
Alexander Artemenko 03.02.2015 13:45
quelle
2

Der einfachste Weg, um dieses Problem zu lösen:

Dafür gibt es zwei Arten der Authentifizierung in drf siehe drf auth

BasicAuthentication

SessionAuthentication (Standard)

SessionAuthentication hat eine erzwungene CSRF-Prüfung, aber BasicAuthentication nicht. Also verwende ich BasicAuthentication in meiner Ansicht anstelle von SessionAuthentication.

%Vor%     
Anderson 17.10.2015 18:12
quelle