Python中的XMLRPC服务器和客户端模块
我们可以使用XML-RPC创建自己的跨平台,独立于语言的服务器,并protocol.We使用SimpleXMLRPCServer创建SimpleXMLRPCServer实例并告诉它侦听传入的请求。接下来,我们定义一些功能作为服务的一部分,并注册这些功能,以便服务器知道如何调用它。
运行服务器
在下面的示例中,我们使用SimpleXMLRPCServer实例创建服务器,并注册一些预定义以及自定义函数。最后,我们将服务器置于无限循环中,以接收和响应请求。
例子
fromxmlrpc.serverimport SimpleXMLRPCServerfromxmlrpc.serverimport SimpleXMLRPCRequestHandler
class RequestHandler(SimpleXMLRPCRequestHandler):
rpc_paths = ('/RPC2',)
with SimpleXMLRPCServer(('localhost', 9000),
requestHandler=RequestHandler) as server:
server.register_introspection_functions()
# 注册len()函数;
server.register_function(len)
# 用其他名称注册功能
@server.register_function(name='rmndr')
def remainder_function(x, y):
return x // ÿ
# 在function .__ name__下注册一个函数。
@server.register_function
def modl(x, y):
return x % y
server.serve_forever()
一旦启动上述服务器,就可以由客户端程序调用该服务器,该客户端程序可以引用这些函数并进行函数调用。
运行客户端
例子
import xmlrpc.clients = xmlrpc.client.ServerProxy('http://localhost:9000')
print(s.len("Nhooo"))
print(s.rmndr(12,5))
print(s.modl(7,3))
# 打印可用方法列表
print(s.system.listMethods())
输出
运行上面的代码给我们以下结果-
142
1
['len', 'modl', 'rmndr', 'system.listMethods', 'system.methodHelp', 'system.methodSignature']
以上是 Python中的XMLRPC服务器和客户端模块 的全部内容, 来源链接: utcz.com/z/311517.html