import sys
import pdb
import http.client
def PassParse():
headers = {"Accept":" application/json, text/plain, */*",
"Authorization":" Basic YWRtaW46YXNkZg==",
"Referer":" http://192.168.1.113:8080/#/apps",
"Accept-Language":" zh-CN",
"Accept-Encoding":" gzip, deflate",
"User-Agent":" Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko LBBROWSER",
"Host":" 192.168.1.113:8080",
"DNT":" 1",
"Connection":" Keep-Alive"};
conn = http.client.HTTPConnection("192.168.1.113:8080");
conn.request(method="Get",url="/api/v1/login",body=None,headers=headers);
response = conn.getresponse();
responseText = response.getheaders("content-lentgh");
print ("succ!^_^!");
#print (response.status);
print (responseText);
conn.close();
run error:
Traceback (most recent call last):
File "F:\Python\test1-3.4.py", line 32, in <module>
PassParse();
File "F:\Python\test1-3.4.py", line 24, in PassParse
response = conn.getresponse();
File "E:\program files\Python 3.4.3\lib\http\client.py", line 1171, in getresponse
response.begin()
File "E:\program files\Python 3.4.3\lib\http\client.py", line 351, in begin
version, status, reason = self._read_status()
File "E:\program files\Python 3.4.3\lib\http\client.py", line 333, in _read_status
raise BadStatusLine(line)
http.client.BadStatusLine: <html>
Antwort
löse ich habe das Problem, mit dem folgenden Code:
von requests.auth Import HTTPBasicAuth
res = requests.get ('http://192.168.1.113:8080/api/v1/login', auth = (Benutzername) e, Passwort));
Aus den Python-Dokumentation für httplib
:
exception httplib.BadStatusLine
A subclass of HTTPException. Raised if a server responds with a HTTP status code that we don’t understand.
Klingt API nicht etwas sein könnte zurückkehren, die als gültige HTTP analysiert werden kann Antwort mit einem gültigen HTTP-Statuscode. Möglicherweise möchten Sie überprüfen, dass der Code für Ihren API-Endpunkt wie erwartet funktioniert und nicht fehlschlägt.
Abgesehen davon, Ihr Code läuft gut bis auf eine Sache: response.getheader()
ein Argument nimmt, während response.getheaders()
kein Argument, so Python mit darüber beschweren, wenn Sie die BadStatusLine
Ausnahme lösen.
Es scheint, dass der HTTP-Server keine gültige HTTP-Antwort zurückgegeben hat. Sie können ihn mit telnet überprüfen. senden
telnet 192.168.1.113 8080
dann:
GET /api/v1/login HTTP/1.1
Referenz: https://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html
- 1. Wenn ich verdrillte, verpasste es einige Dateien
- 2. Es gibt einige Fehler bei der Verwendung von Passenger
- 3. ASP.net ViewState - Auch wenn deaktiviert, gibt es einige Viewstate. Warum?
- 4. Wenn Assert fehlschlägt, gibt es einen Fehler?
- 5. PHP, nicht senden, wenn es Fehler gibt
- 6. Gibt es einige beeindruckende ExtJS-Beispiele online?
- 7. Einige Fehler, wenn ich versuche, meine Anwendung in Android Studio
- 8. gibt es keine Antwort, wenn ich Mongo
- 9. gibt es eine Möglichkeit, tabindex nur für einige Felder in einem HTML-Formular zu verwenden?
- 10. Warum gibt es immer Fehler?
- 11. Selen Safari-Treiber 2.48 gibt Fehler, wenn es initialisiert
- 12. ASP.Net MVC: Render Html.ValidationSummary nur wenn es Fehler gibt
- 13. Gibt es eine Möglichkeit, "vagrant up" -Befehl zu blockieren, wenn einige Projektdateien fehlen
- 14. Es gibt einige Methoden, Umschalttasten zu verwenden, ohne viele Bedingungen erstellen zu müssen
- 15. Warum gibt es imageCreateFrom * wenn es imageCreateFromString gibt?
- 16. Es gibt einige Dinge, die Sie einfach nicht testen können?
- 17. Gibt es einige Unix-Util, mit denen ich mehrere Dateien mit wenig Tippen grep?
- 18. Wie kann ich versuchen ... fangen und mein Skript stoppen, wenn es einen Fehler gibt?
- 19. Gibt es einen Fehler in CL_SALV_TREE?
- 20. Einige Fehler passieren, wenn Daten in HDFS Laden
- 21. Wenn ich VS2015 und Develop MVC3-Programm verwende, gab es einige seltsame Probleme
- 22. Android: Es gibt einige Standard-System-PIDs in Android?
- 23. Es gibt einige Android-Installation ohne deviceToken auf parse.com
- 24. Fehler auf meiner Seite, wenn ich versuche, CSS zu verwenden
- 25. Warum einige? gibt true zurück, wenn es false als Parameter in Clojure annimmt?
- 26. PHP-Schalter ($ array_key), wenn es keinen Schlüssel für einige Array-Elemente gibt
- 27. Django Forms gibt Fehler über Errorlist zurück Wenn ich
- 28. Kann ich einen Ternäroperator verwenden, wenn es eine "Rückkehr" von den Bedingungen gibt?
- 29. Es gibt einen Grund, den wiederaufsetzbaren Upload zu verwenden, wenn ich eine stabile Verbindung habe?
- 30. Gibt es eine Möglichkeit, bestimmte Module automatisch zu "verwenden", wenn ich ein Skript schreibe?