ReflectRPC - JSON-RPC 库工具


MIT
跨平台
Python

软件简介

ReflectRPC 是一款JSON-RPC 库工具,用于创建自描述RPC服务。

特性:

  • 注册和RPC调用的文件是在一个地方

  • 类型检查

  • 特殊的RPC 调用可获得服务、函数、访问类型的描述

  • 可以通过Shell(rpcsh)去了解一个RPC服务,以及调用到它的函数

  • 强大的基类,支持可扩展

  • 支持自定义枚举类型和哈希值,类似C

  • 基于Twisted服务,支持TCP、UNIX 域套接字、line-based plain sockets、HTTP、 HTTP Basic Auth、 TLS、和TLS客户端认证

  • 支持动态创建HTML 页面

使用示例:

创建一个函数并注册

import reflectrpc
import reflectrpc.simpleserver

def 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