Wie kann ich die Authentifizierung in Django REST Framework deaktivieren?
Arbeite ich auf einer Shop-Website, wo jeder Benutzer anonym zu sein (gut, bis es Zeit ist zu zahlen, mindestens), und ich versuche, Django REST Framework dienen die Produkt-API, aber es hält Klagen über:
"detail": "Authentication credentials were not provided."
Fand ich einige Einstellungen im Zusammenhang mit der Authentifizierung, aber ich konnte nichts finden wie ENABLE_AUTHENTICATION = True
. Wie kann ich Sie einfach deaktivieren Sie die Authentifizierung, und lassen Sie jeden Besucher der Website Zugriff auf die API?
Kommentar zu dem Problem
Verwandte Frage: stackoverflow.com/questions/35970970/...
InformationsquelleAutor der Frage machineghost | 2014-11-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie geben leere Standardwerte für die Erlaubnis und Authentifizierung Klassen in Ihren Einstellungen.
InformationsquelleAutor der Antwort inancsevinc
Können Sie auch deaktivieren Sie die Authentifizierung für eine bestimmte Klasse oder Methode, nur halten Sie einen leeren Dekorateure für die jeweilige Methode.
InformationsquelleAutor der Antwort Aashish Soni
Wenn mit APIView können Sie erstellen, die eine Berechtigung für die Ansicht, Beispiel unten:
urls.py
permissions.py
views.py
InformationsquelleAutor der Antwort Slipstream
Können Sie sich auch wenden es auf einen konkreten Endpunkt, indem Sie auf die Klasse oder Methode. Nur anwenden müssen django rest framework AllowAny Erlaubnis, um die spezifische Methode oder Klasse.
views.py
Können Sie dasselbe Ergebnis erreichen, indem Sie mit einer leeren Liste oder Tupel für die Berechtigungen festlegen, aber Sie mögen es hilfreich finden, geben Sie diese Klasse, denn Sie macht die Absicht deutlich.
InformationsquelleAutor der Antwort Umar Asghar