在实现 JSONRPC 2.0 服务器时,是不是需要同时支持命名参数和位置参数?
Posted
技术标签:
【中文标题】在实现 JSONRPC 2.0 服务器时,是不是需要同时支持命名参数和位置参数?【英文标题】:When implementing a JSONRPC 2.0 server, is it required to support both named, and positional arguments?在实现 JSONRPC 2.0 服务器时,是否需要同时支持命名参数和位置参数? 【发布时间】:2010-12-20 23:14:21 【问题描述】:根据此处的规范:http://groups.google.com/group/json-rpc/web/json-rpc-2-0
更具体地说,本节:
如果存在,rpc 的参数 call 必须以结构化的形式提供 价值。无论是通过一个位置 数组或通过对象的名称。
在我看来,这两种样式都必须支持,但我提交了一份错误报告,另一位开发人员认为应该由开发人员决定支持哪种方法,并且规范不需要同时支持这两种样式。
除了我上面引用的内容外,我找不到官方答案,其他开发人员的解释方式与我不同。
那么,普遍的共识是什么?
【问题讨论】:
【参考方案1】:我完全同意,上述文档中已明确概述。 4.2 第一句中的“必须”一词需要“结构化值”。 “结构化值”稍后由第二句定义。忽略其中一个选项是更改违反 JSON-RPC 2.0 规范的“结构化值”的定义
-
如果存在,则 rpc 调用的参数必须作为结构化值提供。
通过数组按位置或通过对象按名称。
【讨论】:
【参考方案2】:加入你的阵营,我认为这不会引起争议。
【讨论】:
另一位开发人员也反对我,已决定实施该规范的一半。 trac.xbmc.org/ticket/10095以上是关于在实现 JSONRPC 2.0 服务器时,是不是需要同时支持命名参数和位置参数?的主要内容,如果未能解决你的问题,请参考以下文章
适用于 Android 的最佳 json rpc 2.0 库 [关闭]
在具有双向支持的 java 中实现 jsonrpc 2.0 的最佳库