使用conn=httplib.HTTPConnection(“http://ipaddr:port”)时出错

2024-04-29 07:15:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用

httplib.HTTPConnection ("http://ipaddr:port")  
conn.request("GET", "", params, headers)

我可以使用我的firefox客户端使用ipaddr:port来进行PUT/GET!!。 但我看到在执行脚本时出现了这个错误:

 File "post_python.py", line 5, in <module>
    conn.request("GET", "", params, headers)
  File "/usr/lib64/python2.6/httplib.py", line 914, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders
    self._send_output()
  File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.6/httplib.py", line 739, in send
    self.connect()
  File "/usr/lib64/python2.6/httplib.py", line 720, in connect
    self.timeout)
  File "/usr/lib64/python2.6/socket.py", line 553, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno -2] Name or service not known"

有人能帮我吗??


Tags: inpyselfsendgetportrequestusr
3条回答

你可能有一个浏览器已经知道的代理。如果您在linux下,请尝试设置http_proxy环境变量。

请改为尝试此操作(IP地址前不带“http://”):

conn = httplib.HTTPConnection("x.x.x.x", port)  
conn.request("GET", "", params, headers)

如果是IPv6地址,则需要按照RFC 2732用括号将其括起来。如果我没记错的话,如果不使用括号,就会得到错误消息。

httplib.HTTPConnection ("http://[::1]:8080")  
conn.request("GET", "", params, headers)

相关问题 更多 >