Ich bin ein Neuling in Python und benutze Python Flask und generiere REST API Service.
Ich möchte den Autorisierungsheader überprüfen, der an den Client gesendet wird.
Aber ich kann keinen Weg finden, um den HTTP-Header in den Kolben zu bekommen.
Jede Hilfe zum Abrufen der HTTP-Header-Autorisierung ist willkommen.
Antworten:
request.headers
verhält sich wie ein Wörterbuch, sodass Sie Ihren Header auch wie bei jedem Wörterbuch abrufen können:quelle
request.authorization.username
oderrequest.authorization.password
.Beachten Sie nur, dass sich die Methoden unterscheiden, wenn der Header nicht vorhanden ist
wird zurückgegeben
None
oder keine Ausnahme, so können Sie es wie verwendenAber das Folgende wird einen Fehler auslösen
Sie können damit umgehen
quelle
Wenn jemand versucht, alle übergebenen Header abzurufen, verwenden Sie einfach:
Es gibt Ihnen alle Header in einem Diktat, von dem aus Sie tatsächlich tun können, was Sie wollen. In meinem Anwendungsfall musste ich alle Header an eine andere API weiterleiten, da die Python-API ein Proxy war
quelle
request.headers
ist eigentlich einEnvironHeaders
Objekt, auf das wie ein Wörterbuch zugegriffen werden kann. werkzeug.palletsprojects.com/de/1.0.x/datastructures/…Mal sehen, wie wir die Parameter, Header und Body in Flask bekommen. Ich werde es mit Hilfe eines Postboten erklären.
Die Parameterschlüssel und -werte werden im API-Endpunkt wiedergegeben. Zum Beispiel Schlüssel1 und Schlüssel2 im Endpunkt: https://127.0.0.1/upload ? Schlüssel1 = Wert1 & Schlüssel2 = Wert2
Lassen Sie uns nach params nun sehen, wie Sie die Header erhalten :
Nun wollen wir sehen, wie man den Körper bekommt
Also holen wir die hochgeladenen Dateien mit request.files und den Text mit request.form
quelle