Ich versuche, Authentifizierung für die eingehende Anfrage konfigurieren, aber ich bin nicht in der Lage, die erforderlichen Schritte zu verstehen, um es zu erreichen.Nicht authentifizieren mit dem django Rest-Framework (request.user = AnonymousUser)
ich die Schritte in der documentation
Erste bereitgestellt gefolgt sind, bearbeitet ich die setting.py
für die Auth-Einstellungen:
INSTALLED_APPS = [
...,
'rest_framework',
'rest_framework.authtoken',
...,
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.BasicAuthentication',
'rest_framework.authentication.TokenAuthentication',
)
}
Im view.py
:
@csrf_exempt
def uuid_details(request, uuid):
if request.method == 'GET':
print "user: " + str(request.user) # user: AnonymousUser
Also, wenn ich rufe über Rest API, in der obigen Zeile werde ich als ausgegeben. Nach meinem Verständnis sollte ich das authentifizierte Objekt User
erhalten.
Ich kann das Token abrufen und an die Rest-API übergeben.
>>> Token.objects.get(user=user)
<Token: 95119884347cf000caab9d2596b9a18a9103f1db>
So kann ich nicht verstehen, wie die Authentifizierung in Django Rest Framework funktioniert.
Wie machen Sie die 'Anfrage' an die Ansicht mit 'AnonymousUser'? – iulian
@Iulian folgende ist die Anfrage curl -X GET http://127.0.0.1:8000/uuid/O5gn2Pl7RTqQc7PR4HDQjw/details/ -H 'Autorisierung: Token 95119884347cf000caab9d2596b9a18a9103f1db' –