JSON-RPC模式规范?

时间:2019-01-12 21:32:54

标签: json-rpc

我正在考虑尝试为特定的json-rpc 2.0服务实现客户端,该服务可以为用户提供一些静态类型保证。所讨论的API非常大,因此实际上是用所有必要的类型信息手工编写功能完备的客户端,这对我来说是一项繁重的任务,因此不便处理。但是,我通过一个未公开的http端点发现了一个基于json的大型架构,该架构似乎完全描述了整个json-rpc服务。我确定我可以使用该规范编写某种代码生成器。太大了,无法粘贴到这里。

我的问题是,是否存在描述json-rpc服务的标准规范?我到处搜索,发现很多死链接,并且json-rpc的官方规范[1]没有提及此类服务的标准架构定义。我发现的架构似乎至少部分基于json-schema规范[2]。

json-rpc

Json Schema

1 个答案:

答案 0 :(得分:0)

JSON Schema非常适合定义有效载荷格式(您甚至可以将其用于OpenAPI中的REST API),但实际上,它对使用方法和入口点描述“ RPC”部分无济于事。

OpenRPC中创建的

early 2019似乎是最有前途的

以太坊经典实验室核心(ECLC)团队最近创建了OpenRPC规范,旨在改善所有区块链dapp开发。该规范模仿OpenAPI,这是REST API的成功且被广泛采用。

OpenRPC规范为JSON-RPC 2.0 API定义了与编程语言无关的标准接口描述。

其他方法

Drupal JSON-RPC module提供了一个发现端点和一个Postman集合

可以通过向/ jsonrpc / methods发送HTTP GET请求来发现可用的RPC服务以及文档和用法详细信息。

您可以将此Postman Collection与示例和测试结合使用。

AsyncAPIgRPCGraphQL那里可能还会得到一些有趣的东西。

死亡

还引用了我偶然发现的其他选项,但这些选项已死:

JSON-WSP似乎已经过时,Wikipedia页面正在等待删除(对话页面似乎说这实际上并不是一个标准)

JSON-WSP(JavaScript对象表示法Web服务协议)是一种 使用JSON进行服务描述,请求的Web服务协议 和回应。它的灵感来自JSON-RPC,但是缺少服务 带有JSON-RPC文档的描述规范触发了 JSON-WSP的设计。

JSON Schema Service Descriptor似乎仍然是草稿

JSON模式服务描述符只是一个带有方法附加定义的JSON模式。