Berechnung von Inhalten-Länge mit Python
Ich versuche, einen post zu machen, aber jedes mal, wenn ich es Tat, ich würde ein 411-response-Fehler. Ich bin mit den Anforderungen der Bibliothek in python.
In [1]: r.post(url)
Out[1]: <Response [411]>
So, dann habe ich angegeben das die Länge des Inhalts h = {'content-length' : '0'}
und versuchen Sie es erneut.
In [2]: r.post(url,h)
Out[2]: <Response [200]>
So toll, ich bekomme einen Erfolg, aber keine der Informationen ist erschienen.
Ich glaube, ich brauche zu berechnen, die content-length, was Sinn macht, wie es sein könnte "cutting-off" der post.
Meine Frage ist also, gegeben eine url www.example.com/import.php?key=value&key=value
wie kann ich berechnen, die content-length
? (in python, wenn möglich)
Funktioniert es, wenn Sie nur
Bitte fügen Sie Informationen über die version von Anfragen, die Sie verwenden. Auch bitte testen Fall die Ergebnisse in der 411-response status-code.
Besuchen Sie diesen link, um Antwort zu erhalten Ihrer Abfrage
urllib
? (Ich bin überrascht, dass request
nicht automatisch füllen Sie die Content-Length
header, da es basierend auf httplib
die nicht.)Bitte fügen Sie Informationen über die version von Anfragen, die Sie verwenden. Auch bitte testen Fall die Ergebnisse in der 411-response status-code.
Besuchen Sie diesen link, um Antwort zu erhalten Ihrer Abfrage
InformationsquelleAutor tshauck | 2012-03-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht es seltsam aus, dass Sie verwenden
post
Methode ohnedata
argument (aber auch Daten in der url).Betrachten Sie das Beispiel aus der offizielle Anfragen Dokumentation :
InformationsquelleAutor Leonid Shvechikov
Senden
POST
Anfrage mit leeren Körper ist vollkommen legal, solange dieContent-Length
header gesendet wird und auf0
. Anfragen normalerweise berechnen Sie den Wert fürContent-Length
header. Das Verhalten, das Sie beobachten ist wahrscheinlich durch Ausgabe Zwei hundert drei und zwanzig - Content-Length fehlt.Obwohl der Fehler nicht geschlossen wie es aussieht wurde das Problem behoben:
InformationsquelleAutor Piotr Dobrogost