什么是JSON API?
当然知道的很多。
JSON -
JSON数据交换的文本格式
API -
API应用程序编程接口
此处的关键字:数据交换接口。
A,那么什么是JSON-RPC?
JSON-我们已经知道了。
RPC-远程过程调用
RPC我们得出结论,JSON-RPC是:远程数据交换。
当然,此数据交换将通过特定的接口进行,即 使用API。
有什么问题吗? 你问。 事实上,一些开发JSON API(即接口)的程序员忘记了JSON-RPC,然后自行车的下一个发明就开始了。 前端程序员说:“我会给你这样的json”,后端程序员回答:“我会给你这样的json”。 一切都很好,但是最好记住,聪明的人已经开发了很长时间的标准,或者说是数据交换协议。 而不是一些非常复杂但非常简单的:
JSON-RPC即使不是说几乎每个人都知道甚至使用这些协议,也是很有可能的。 编写了一堆服务器,等等。 但是就个人而言,并不是所有内容都适合我现有的协议。 在我看来,它们似乎不够灵活,在所有方面都不合逻辑。 您可能已经猜到了,我决定发明自行车
json-rpc-1.5与现有协议的主要区别在于:
- 可选的“ sign”参数-签名或令牌
- 在查询中,使用data参数代替了param参数,因为 我们总是发送数据,而不仅仅是参数。
- 在所有答案中,始终返回参数“结果”,并且该参数包含对查询结果“成功”或“错误”的描述。
- 响应中的所有数据都在“ data”参数中
- 您可以使用别名来命名请求和响应参数。
似乎。 差异很小,但是从根本上来说很重要。
顺便说一句,该协议在实践中出现了,即 创建json api时,我使用了此协议中描述的方法。
PS:
收到了很多负面评论和缺点之后,我决定再次检查一下,也许我确实做错了什么? 自然,我在这里写的只是我的个人观点,我不对任何人强加任何东西。 让我举几个例子:
1.
Yandex直接JSON API请求示例:
{ "method": "GetClientInfo", "param": ["agrom"], "locale": "ru", "token": "0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f" }
他们还可以阅读有关令牌的信息:
授权令牌2.
使用Apple Pay从移动应用程序进行 Sberbank API
支付的示例
我不会给出JSON请求,因为它很大,您可以看到链接。
JSON请求必须包含“ paymentToken”,这一点很重要。
这是苹果代币形成要求的链接重要的是要理解,API中的令牌和签名经常与其他保护方法一起使用。 那些使用各种API的人都非常了解这一点。