是否可以设置xmlrpc连接的客户端端口?Python:是否可以使用xmlrpclib设置客户端?
我想说:
客户应该做出ServerProxy对象于在特定的客户端端口
或伪代码是这样的:
serv = xmlrpclib.ServerProxy("server:port","overSpecificClientPort").
是否可以设置xmlrpc连接的客户端端口?Python:是否可以使用xmlrpclib设置客户端?
我想说:
客户应该做出ServerProxy对象于在特定的客户端端口
或伪代码是这样的:
serv = xmlrpclib.ServerProxy("server:port","overSpecificClientPort").
没有选项为模块xmlrpclib,但可以通过修改原始版本来创建自己的选项。假设您使用Linux,请获取/usr/lib/python2.7/xmlrpclib.py
。相应地修改方法make_connection
。
提供参数source_address
到HTTPConnection
由httplib支持,而不是在Python版本2.7之前。
玩得开心!
尝试定义自定义传输。这应该是类似的东西:
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(而不是之前)