2019-04-15 04:05:22 +02:00
|
|
|
A simple demo for building a `JSONRPC over HTTP` server in [actix-web](https://github.com/actix/actix-web).
|
|
|
|
|
|
|
|
# Server
|
|
|
|
|
|
|
|
```sh
|
2021-10-06 23:28:53 +02:00
|
|
|
cd json/jsonrpc
|
|
|
|
cargo run
|
2019-04-15 04:05:22 +02:00
|
|
|
# Starting server on 127.0.0.1:8080
|
|
|
|
```
|
|
|
|
|
|
|
|
# Client
|
|
|
|
|
|
|
|
**curl**
|
|
|
|
|
|
|
|
```sh
|
|
|
|
$ curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc": "2.0", "method": "ping", "params": [], "id": 1}' http://127.0.0.1:8080
|
|
|
|
# {"jsonrpc":"2.0","result":"pong","error":null,"id":1}
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**python**
|
|
|
|
|
|
|
|
```sh
|
|
|
|
$ python tests\test_client.py
|
|
|
|
# {'jsonrpc': '2.0', 'result': 'pong', 'error': None, 'id': 1}
|
|
|
|
```
|
|
|
|
|
|
|
|
# Methods
|
|
|
|
|
|
|
|
- `ping`: Pong immeditely
|
2019-04-15 08:16:38 +02:00
|
|
|
- `wait`: Wait `n` seconds, and then pong
|
2019-04-15 04:05:22 +02:00
|
|
|
- `get`: Get global count
|
|
|
|
- `inc`: Increment global count
|
|
|
|
|
|
|
|
See `tests\test_client.py` to get more information.
|