2011-09-01 75 views

回答

-2

没有选项为模块xmlrpclib,但可以通过修改原始版本来创建自己的选项。假设您使用Linux,请获取/usr/lib/python2.7/xmlrpclib.py。相应地修改方法make_connection

提供参数source_addressHTTPConnection由httplib支持,而不是在Python版本2.7之前。

玩得开心!

1

尝试定义自定义传输。这应该是类似的东西:

import xmlrpclib, httplib 

class sourcedTransport(xmlrpclib.Transport): 
    def setSource(self, src): 
     self.src = src 
    def make_connection(self, host): 
     h = httplib.HTTPConnection(host, source_address= self.src) 
     return h 

srcPort = 43040 
srcAddress = ('', srcPort) 
p = sourcedTransport() 
p.setSource(srcAddress) 
server = xmlrpclib.ServerProxy("server:port", transport=p) 

编辑:bug修复httplib.HTTP => httplib.HTTPConnection

,并检查它的工作原理,在Python 2.7(而不是之前)

相关问题