时间:2021-05-22
一、远程过程调用RPC
XML-RPC is a Remote Procedure Call method that uses XML passed via HTTP as a transport. With it, a client can call methods with parameters on a remote server (the server is named by a URI) and get back structured data. This module supports writing XML-RPC client code; it handles all the details of translating between conformable Python objects and XML on the wire.
简单地,client可以调用server上提供的方法,然后得到执行的结果。类似与webservice。
推荐查看xmlprc的源文件:C:\Python31\Lib\xmlrpc
二、实例
1) Server
复制代码 代码如下:
from xmlrpc.server import SimpleXMLRPCServer
from xmlrpc.server import SimpleXMLRPCRequestHandler
def div(x,y):
return x - y
class Math:
def _listMethods(self):
# this method must be present for system.listMethods
# to work
return ['add', 'pow']
def _methodHelp(self, method):
# this method must be present for system.methodHelp
# to work
if method == 'add':
return "add(2,3) => 5"
elif method == 'pow':
return "pow(x, y[, z]) => number"
else:
# By convention, return empty
# string if no help is available
return ""
def _dispatch(self, method, params):
if method == 'pow':
return pow(*params)
elif method == 'add':
return params[0] + params[1]
else:
raise 'bad method'
server = SimpleXMLRPCServer(("localhost", 8000))
server.register_introspection_functions()
server.register_function(div,"div")
server.register_function(lambda x,y: x*y, 'multiply')
server.register_instance(Math())
server.serve_forever()
2)client
复制代码 代码如下:
import xmlrpc.client
s = xmlrpc.client.ServerProxy('http://localhost:8000')
print(s.system.listMethods())
print(s.pow(2,3)) # Returns 28
print(s.add(2,3)) # Returns 5
print(s.div(3,2)) # Returns 1
print(s.multiply(4,5)) # Returns 20
3)result
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
用python实现FTP文件传输,包括服务器端和客户端,要求(1)客户端访问服务器端要有一个验证功能(2)可以有多个客户端访问服务器端(3)可以对重名文件重新上
服务器端和客户端的区别: 1、定义不同:客户端:客户端(Client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。服务器端:服务器端,从广义上
服务器端和客户端的区别: 1、定义不同。 客户端(Client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。服务器端,从广义上讲,服务器是指
通过对Request对象的学习,可以了解到,Request对象是服务器端用来获取客户端的信息的。但作为服务器和客户端进行交互,是不是还缺少服务器端向客户端发送信
Android客户端请求服务器端的详细解释1.Android客户端与服务器端通信方式:Android与服务器通信通常采用HTTP通信方式和Socket通信方式,