Contents
JSON-RPC
JSON-RPC (JavaScript Object Notation-Remote Procedure Call) is a remote procedure call (RPC) protocol encoded in JSON. It is similar to the XML-RPC protocol, defining only a few data types and commands. JSON-RPC allows for notifications (data sent to the server that does not require a response) and for multiple calls to be sent to the server which may be answered asynchronously.
History
Usage
JSON-RPC works by sending a request to a server implementing this protocol. The client in that case is typically software intending to call a single method of a remote system. Multiple input parameters can be passed to the remote method as an array or object, whereas the method itself can return multiple output data as well. (This depends on the implemented version.) All transfer types are single objects, serialized using JSON. A request is a call to a specific method provided by a remote system. It can contain three members: The receiver of the request must reply with a valid response to all received requests. A response can contain the members mentioned below. Since there are situations where no response is needed or even desired, notifications were introduced. A notification is similar to a request except for the id, which is not needed because no response will be returned. In this case the property should be omitted (Version 2.0) or be (Version 1.0).
Examples
In these examples, denotes data sent to a service (request), while denotes data coming from a service. Although is often called a response in client–server computing, depending on the JSON-RPC version it does not necessarily imply an answer to a request.
Version 2.0
Request and response: Notification (no response):
Version 1.1 (Working Draft)
Request and response:
Version 1.0
Request and response:
This article is derived from Wikipedia and licensed under CC BY-SA 4.0. View the original article.
Wikipedia® is a registered trademark of the
Wikimedia Foundation, Inc.
Bliptext is not
affiliated with or endorsed by Wikipedia or the
Wikimedia Foundation.