JSON-RPC
Author: | Roland Koebler (rk at simple-is-better dot org) |
---|---|
Date: | 2012-03-02 |
Although this is not an official JSON-RPC page, it is intended to be an up-to-date summary of all relevant information about JSON-RPC. Please tell me if there is some information missing, if an implementation is not listed etc.
1 Mailinglist
The JSON-RPC Working Group has a mailinglist, in which all topics of and around the protocol are discussed.
Feel free to join the list.
2 Specifications
JSON-RPC is a lightweight remote procedure call protocol. It's designed to be simple!
2.1 JSON-RPC 2.0
Specifications:
- JSON-RPC 2.0 (final)
Working Drafts:
JSON-RPC transports (JSON-RPC over HTTP/TCP/netstrings/...)
JSON-RPC does not depend on any specific transport. Any transport should be possible. As "rule-of-thumb": simply tunnel JSON-RPC through your desired transport.
Nevertheless, here are some recommendations how to use JSON-RPC over some commonly-used transports.
- Draft for JSON-RPC over Sockets (TCP / Unix Domain Sockets)
- Draft for JSON-RPC over HTTP
Service Description / Introspection
- old Draft 1: JSON Schema Service Descriptor
- old Draft 2: Simple Method Description example
JSON DateTime format
JSON-RPC - HTTP REST conversion
attachments
UBJSON-RPC ("Binary JSON RPC")
...
Application Notes:
- FAQ (TODO)
- main differences to JSON-RPC 1.0
2.2 JSON-RPC 1.0
3 Implementations
A list of implementations can also be found at:
Language | JSON-RPC Version | Name | License | Code Example Link | Description |
---|---|---|---|---|---|
(TODO) |
4 Links
RPC:
JSON-RPC:
- json-rpc.org -- a currently outdated page about JSON-RPC
- english and german Wikipedia-articles about JSON-RPC
- Matt's jsonrpc.org page and json-rpc.info blog
- Matt's JSON-RPC Object Specification
- JSON-WSP (Wikipedia) -- a JSON-RPC-inspired RPC-protocol which includes service descriptions, but which requires http, probably doesn't support positional parameters and has only few implementations.
- my thoughts about RPC and JSON-RPC
JSON:
- JSON (JSON in Wikipedia) -- JavaScript Object Notation
- JSON: The Fat-Free Alternative to XML
- BSON (BSON in Wikipedia), BISON, UBJSON, SmileFormat: different "binary JSON" standards
- JsonML (JsonML in Wikipedia): Map between XML and JSON
- ...