我有以下代码使用suds通过代理发送数据:
import suds
t = suds.transport.http.HttpTransport()
proxy = urllib2.ProxyHandler({'http': 'http://192.168.3.217:3128'})
opener = urllib2.build_opener(proxy)
t.urlopener = opener
ws = suds.client.Client('http://xxxxxxx/web.asmx?WSDL', transport=t)
req = ws.factory.create('ActionRequest.request')
req.SerialNumber = 'asdf'
req.HostName = 'hola'
res = ws.service.ActionRequest(req)
我不知道为什么,但它可以发送超过2或3分钟的数据,甚至更多,并且有时会引发“网关超时”异常。如果我不使用代理,则使用的时间超过2秒或更短。这是SOAP回复:
(ActionResponse){
Id = None
Action = "Action.None"
Objects = ""
}
代理通过urllib2正常运行其他请求,或使用像firefox这样的普通网络浏览器。
有没有人知道泡沫在这里发生了什么?
提前多多感谢!!!
答案 0 :(得分:0)
嗅探器输出(例如来自wireshark)可能非常有助于理解这一点。