jsonrpc
2024-10-12
JSON-RPC 2.0 server/client implementation
jsonrpc
JSON-RPC 2.0 server/client for Common Lisp.
Usage
;; server (defvar *server* (jsonrpc:make-server)) (jsonrpc:expose *server* "sum" (lambda (args) (reduce #'+ args))) (jsonrpc:server-listen *server* :port 50879 :mode :tcp)
;; client (defvar *client* (jsonrpc:make-client)) (jsonrpc:client-connect *client* :url "http://127.0.0.1:50879" :mode :tcp) (jsonrpc:call *client* "sum" '(10 20)) ;=> 30 ;; Calling with :timeout option (jsonrpc:call *client* "sum" '(10 20) :timeout 1.0) ;=> 30
To invoke an interactive debugger on any errors in your handlers, set jsonrpc:*debug-on-error*
to t
.
Experimental features (only for Server)
- broadcast
- multicall-async
Author
- Eitaro Fukamachi (e.arrows@gmail.com)
Copyright
Copyright (c) 2016 Eitaro Fukamachi (e.arrows@gmail.com)
License
Licensed under the BSD 2-Clause License.