是否可以設置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(而不是之前)