xml rpc SimpleXMLRPCServer [python]
SimpleXMLRPCServe 其实里面xml的概念不是很强,主要是rpc !不用关心什么xml 。
rpc 是就是远程调用,把函数什么的放到远程服务器上,本地调用就行了。用 SimpleXMLRPCServer实现起来非常简洁。
服务器端:
server = SimpleXMLRPCServer(("localhost", 8000)) 监听一个ip:port
注册函数,或者是class 实例都可以
server.register_function(pow)
server.register_function(lambda x,y: x+y, 'add') 注册add函数
class Calendar: def getMonth(self, year, month): return calendar.month(year, month) def getYear(self, year): return calendar.calendar(year) calendar_object = Calendar()
server.register_instance(calendar_object) 注册class实例
server.serve_forever() 运行
客户端:
import xmlrpclib
server = xmlrpclib.ServerProxy("http://localhost:8888")
import xmlrpclib server = xmlrpclib.ServerProxy("http://localhost:8888") month = server.getMonth(2002, 8) print month