Ich versuche, eine API-POST-Anforderung mithilfe der Python-Anforderungsbibliothek zu erstellen. Ich gehe durch einen Authorization
Header, aber wenn ich das Debuggen versuche, kann ich sehen, dass der Header gelöscht wird. Ich habe keine Ahnung, was los ist.
Hier ist mein Code:
access_token = get_access_token()
bearer_token = base64.b64encode(bytes("'Bearer {}'".format(access_token)), 'utf-8')
headers = {'Content-Type': 'application/json', 'Authorization': bearer_token}
data = '{"FirstName" : "Jane", "LastName" : "Smith"}'
response = requests.post('https://myserver.com/endpoint', headers=headers, data=data)
Wie Sie oben sehen können, habe ich den Authorization
Header in den Anforderungsargumenten manuell festgelegt , aber es fehlen die Header der tatsächlichen Anforderung :
{'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.4.3 CPython/2.7.9 Linux/4.1.19-v7+'}
.
Eine zusätzliche Information ist, dass, wenn ich die POST-Anfrage in eine GET-Anfrage ändere, der Authorization
Header normal durchläuft!
Warum würde diese Bibliothek den Header für POST-Anfragen löschen und wie kann ich das zum Laufen bringen?
Verwenden von v2.4.3 der Anforderungen lib und Python 2.7.9