Python XML-PRC server

python XMLRPCServer

引言

实现PRC(XML Remote Procedure Call,即XML远程方法调用) 是需要Server 和Client端。 在python中也常用到两个模块: xmlrpclib/SimpleXMLRPCServer
- xmlrpclib: 常用于client 端,非安全模块,需要自己完善安全机制
- SimpleXMLRPCServer: 用于Server端,提供最基本XML-RPC服务器框架。

实现过程

创建SimpleXMLRPCServer 对象 –> register functions/instance –> start server
创建Client 对象 –> call server function.

简单Server 创建

#import
from SimpleXMLRPCServer import SimpleXMLRPCServer
#from SimpleXMLRPCServer  import SimpleXMLRPCRequestHandler

#function will register to server
def add(x,y):
    return x+y
#Instance will register to Server
class MyClass:
    def div(self,x,y):
        return x//y
#Create object of server
s = SimpleXMLRPCServer(("localhost",8000))
#Register introspection functions
s.register_introspection_functions()
#Register functions and instances.
s.register_function(add,"add")
s.register_instance(MyClass())
#Start Server
s.serve_forever()

简单Client 创建

#import 
import xmlrpclib
#Create client object
s = xmlrpclib.ServerProxy('http://localhost:8000')
#use server functions
print s.system.listMethods()
print s.add(2,3)
print s.div(2,3)

参考资料

官网:
https://docs.python.org/2/library/simplexmlrpcserver.html
https://docs.python.org/2/library/xmlrpclib.html
其他:
http://www.jb51.net/article/44515.htm
http://hgoldfish.com/blogs/article/50/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值