ReflectRPC是一款JSON-RPC库工具,用于创建自描述RPC服务。
特性:
注册和RPC调用的文件是在一个地方
类型检查
特殊的RPC调用可获得服务、函数、访问类型的描述
可以通过Shell(rpcsh)去了解一个RPC服务,以及调用到它的函数
强大的基类,支持可扩展
支持自定义枚举类型和哈希值,类似C
基于Twisted服务,支持TCP、UNIX域套接字、line-basedplainsockets、HTTP、HTTPBasicAuth、TLS、和TLS客户端认证
支持动态创建HTML页面
使用示例:
创建一个函数并注册
import reflectrpcimport reflectrpc.simpleserverdef add(a, b): return int(a) + int(b)rpc = reflectrpc.RpcProcessor()add_func = reflectrpc.RpcFunction(add, 'add', 'Adds two numbers', 'int', 'Sum of the two numbers')add_func.add_param('int', 'a', 'First int to add')add_func.add_param('int', 'b', 'Second int to add')rpc.add_function(add_func)server = reflectrpc.simpleserver.SimpleJsonRpcServer(rpc, 'localhost', 5500)server.run()连接到服务器
rpcsh localhost 5500
评论