Einfach nur toll!
JSON-RPC ist ein einfaches Protokoll, um remote auf einem Server Funktionen aufzurufen.
Hierbei kann eine Kommunikation ganz einfach so aussehen:
--> { "method": "echo", "params": ["Hello JSON-RPC"], "id": 1} <-- { "result": "Hello JSON-RPC", "error": null, "id": 1}
Serverseitig wird die Methode ‚echo‘ aufgerufen. Als Parameter wird (in diesem Fall) ein Array mit einem einzelnen String übergeben.
Das alleine ist noch nicht das tollste … In Verbindung mit Python ist das richtig genial …
from jsonrpc import ServiceProxy s = ServiceProxy("http://.../jsonrpc") print s.echo("Hello JSON-RPC")
gibt auf der Konsole aus:
Hello JSON-RPC
Selbstverständlich muss der Server die Methode unterstützen.
Auf Client-Seite muss man mit Python die Methode ‚echo‘ nicht definieren. Man ruft eine Methode mit einem beliebigem Namen auf und die Library erstellt daraus JSON-RPC-Requests, die an den Server geschickt werden. Der Methoden-Name wandert hierbei in das Feld „method“, die Parameter nach „params“. Die Library fängt auch Fehlerfälle ab, wie z.B. die Methode existiert nicht, oder es ist irgendein anderer Fehler aufgetreten.
So einfach ist das!
Demnächst mehr auf Server-Seite in Java … 🙂