gpt4 book ai didi

python httplib 名称或服务未知

转载 作者:太空狗 更新时间:2023-10-29 21:14:51 25 4
gpt4 key购买 nike

我正在尝试使用 httplib 将信用卡信息发送到 authorize.net。当我尝试发布请求时,我得到以下回溯:

File "./lib/cgi_app.py", line 139, in run res = method()
File "/var/www/html/index.py", line 113, in ProcessRegistration conn.request("POST", "/gateway/transact.dll", mystring, headers)
File "/usr/local/lib/python2.7/httplib.py", line 946, in request self._send_request(method, url, body, headers)
File "/usr/local/lib/python2.7/httplib.py", line 987, in _send_request self.endheaders(body)
File "/usr/local/lib/python2.7/httplib.py", line 940, in endheaders self._send_output(message_body)
File "/usr/local/lib/python2.7/httplib.py", line 803, in _send_output self.send(msg)
File "/usr/local/lib/python2.7/httplib.py", line 755, in send self.connect()
File "/usr/local/lib/python2.7/httplib.py", line 1152, in connect self.timeout, self.source_address)
File "/usr/local/lib/python2.7/socket.py", line 567, in create_connection raise error, msg
gaierror: [Errno -2] Name or service not known

我这样构建我的请求:

mystring = urllib.urlencode(cardHash)
headers = {"Content-Type": "text/xml", "Content-Length": str(len(mystring))}
conn = httplib.HTTPSConnection("secure.authorize.net:443", source_address=("myurl.com", 443))
conn.request("POST", "/gateway/transact.dll", mystring, headers)

为此添加另一层,它在我们的开发服务器上运行,该服务器具有 httplib 2.6,并且在 httplib.HTTPSConnection 中没有 source_address 参数。

非常感谢任何帮助。

============================================= ============

编辑:

我可以从命令行运行它。显然这是某种权限问题。有什么想法我需要授予哪些用户才能实现这一点吗?可能是Apache打不开端口?

最佳答案

作为一个(明显的)提醒,同样的错误也可以通过在主机参数中包含协议(protocol)来触发。例如这段代码:

conn = httplib.HTTPConnection("http://secure.authorize.net", 80, ....)  

也会导致“gaierror: [Errno -2] Name or service not known”错误,即使你所有的网络设置都是正确的。

关于python httplib 名称或服务未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4673166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com