python-requests-POST-400-Fehler

Habe ich zu viele Fragen ähnlich wie mir, aber ich konnte keine Lösung finden.

Ich bin mit Anfragen, um eine POST-Anfrage. Ich habe versucht, eine Menge von Kombinationen innerhalb der Anfrage, aber nichts zurückgibt 201 ok.

Hier ist mein code:

 import json
 import requests

 if __name__ == '__main__':

    headers = {'content-type' : 'application/json'}
    url = "http://myserver/ext/v3.1/test_device"
    message = {"atribute_a": "value", "atribute_b": "valueb"}
    params = {"priority":"normal"}

    r = requests.post(url, params=params, headers=headers, data = json.dumps(message) )
    print(r)

Ich habe auch versucht ohne json.dumps, aber es gibt mir auch eine 400 bad request. Ich habe auch versucht, fügen Sie den Parameter direkt in der url wie: ...?Priorität=normal, aber ohne Erfolg.

  • Gibt es nicht eigentlich ein Komma zwischen Parameter und-Header der Anfragen.post?
  • ja @GauravOjha natürlich. Getestet habe ich Sie mit einem Komma. einfach nur schlechte copy&past
  • Haben Sie versucht, die Daten verwenden, = - Nachricht direkt anstelle von json.dumps?
  • Ja @GauravOjha. Ich sagte, dass nach meinem code, aber danke für den Versuch mir zu helfen
  • Dies hat wohl damit zu tun, wie Sie Ihre server verarbeitet diese Anfrage. Können Sie zeigen, welche Art von Anfrage wird erwartet, dass von Ihrem server?
  • Zum Beispiel, ich bekomme 201 ok in der Befehlszeile, wenn ich ausführen: curl -vvv -X POST -H "Content-Type: application/json' -d '{"atribute_a": "Wert", "atribute_b": false}' "myserver/ext/v3.1/test_device/?Priorität=normal"

InformationsquelleAutor lmbcerqueira | 2017-04-11
Schreibe einen Kommentar