Was ist JSON-RPC? Protokoll, Beispiele, REST-Vergleich

JSON-RPC ist ein leichtgewichtiges stateless RPC-Protokoll mit JSON für Requests/Responses.

Was ist JSON-RPC?

JSON-RPC ist ein stateless, leichtgewichtiges Remote-Procedure-Call-(RPC)-Protokoll, das JSON für sowohl Request- als auch Response-Payloads nutzt. Die aktuelle Version ist JSON-RPC 2.0, finalisiert 2010. Das Protokoll ist transport-agnostic — kann über HTTP, WebSocket, TCP oder sogar Named Pipes laufen — und ist absichtlich einfacher als Alternativen wie SOAP oder gRPC.

Die größte zeitgenössische Nutzung ist in Blockchain-Ökosystemen (Ethereum-Nodes kommunizieren ausschließlich via JSON-RPC), aber es ist auch häufig in internen Microservices, IDE-Tooling (Language Server Protocol) und IoT.

JSON-RPC-Request-Struktur

{
  "jsonrpc": "2.0",
  "method": "subtract",
  "params": [42, 23],
  "id": 1
}
  • jsonrpc — Protokoll-Version, immer "2.0".
  • method — die Funktion zum Aufrufen am Server.
  • params — Argumente (Array für positional, Object für named).
  • id — client-generierte eindeutige ID. Weglassen für Notification-Calls.

Response:

{
  "jsonrpc": "2.0",
  "result": 19,
  "id": 1
}

JSON-RPC vs REST vs gRPC

AspektJSON-RPCRESTgRPC
StyleRPCResource (CRUD)RPC
TransportAnyHTTP onlyHTTP/2
PayloadJSONJSON, XMLProtocol Buffers
SchemaKeinesOpenAPI (optional).proto (mandatory)
StreamingLimitiertLimitiertNative bidirectional
Browser-SupportJaJaLimitiert (gRPC-Web)

Häufige JSON-RPC Use Cases

  • Blockchain-Nodes. Ethereum, Bitcoin exposieren JSON-RPC.
  • Interne Microservices.
  • Language Server Protocol (LSP).
  • WebSocket-APIs.
  • IoT-Devices.

Batch-Requests

[
  {"jsonrpc": "2.0", "method": "sum", "params": [1,2,4], "id": 1},
  {"jsonrpc": "2.0", "method": "subtract", "params": [42,23], "id": 2}
]

Standard-Error-Codes

CodeMessageBedeutung
-32700Parse errorInvalides JSON
-32600Invalid RequestKein valides Request-Objekt
-32601Method not foundMethod existiert nicht
-32602Invalid paramsInvalide Method-Parameter
-32603Internal errorInterner JSON-RPC-Error

Pros und Cons

Pros

  • Einfach.
  • Transport-agnostic.
  • JSON-Payloads.
  • Batch-Support.

Cons

  • Keine Standard-Schema-Sprache.
  • Kein natives Streaming.
  • HTTP-Layer ignoriert.
  • Weniger Tooling als REST/gRPC.

FAQ: JSON-RPC

Wird JSON-RPC noch genutzt?

Ja — heavily in Blockchain, Language Server Protocol und internen Microservices.

JSON-RPC vs REST: welches ist besser?

REST für Resource-CRUD-APIs. JSON-RPC für action-oriented APIs.

Nutzt JSON-RPC HTTP-Status-Codes?

Oft returnt 200 auch bei Errors (Error-Info im JSON-Body).

Wie authentifiziere ich JSON-RPC?

Wie jede HTTP-API: Bearer-Tokens, API-Keys, OAuth.

Was ist der Unterschied zwischen JSON-RPC und JSON-RPC 2.0?

2.0 fügte explizites Version-Field hinzu, verbessertes Error-Handling, Named-Parameter. Immer 2.0 für neue Entwicklung nutzen.

Kann JSON-RPC bidirektionale Kommunikation?

Über WebSocket ja — Server kann Notifications zum Client pushen.

JSON-RPC-APIs at Scale mit LoadFocus testen

Wenn Sie JSON-RPC-Endpoints load-testen (besonders Blockchain-Nodes oder interne RPC-Services), läuft LoadFocus JMeter- und k6-Scripts aus 25+ Regionen mit bis zu 12.500 VUs. Registrieren bei loadfocus.com/signup.

Wie schnell ist Ihre Website?

Steigern Sie ihre Geschwindigkeit und SEO nahtlos mit unserem kostenlosen Geschwindigkeitstest.

Kostenloser Websitespeed-Test

Analysieren Sie die Ladegeschwindigkeit Ihrer Website und verbessern Sie ihre Leistung mit unserem kostenlosen Seitengeschwindigkeits-Checker.

×