Skip to main content
jsonrpc_tornado: a compact asynchronous JSON-RPC client library for `Tornado framework <http://www.tornadoweb.org/>`_
=======================================================================================================

Main Features
-------------

* Python 2.7 & 3.4 compatible
* Exposes tornado.httpclient options
* Non-Blocking I/O
* Supports nested namespaces (eg. `app.users.getUsers()`)

Install
-------
pip install git+https://github.com/artemmus/jsonrpc_tornado.git

Usage
-----
A synchronous example:

.. code-block:: python

from jsonrpc_tornado import JSONRPCServer
from tornado.httpclient import HTTPClient

def fetch(server_url):
server = JSONRPCServer(server_url, http_client=HTTPClient,
request_timeout=5.0)

# call some function on the server
result = server.foo(1, 2)


An example of non-blocking calls:

.. code-block:: python

from jsonrpc_tornado import JSONRPCServer, ProtocolError, TransportError
from tornado import gen

@gen.coroutine
def fetch_coroutine(server_url):
server = JSONRPCServer(server_url, request_timeout=5.0)

try:
# call some function on the server
result = yield server.foo(1, 2)
except ProtocolError as err:
logging.error('Some RPC error %s, %s', err.code, err)
except TransportError as err:
# err.args[1] refers to appropriate HTTPError
logging.error('Transport error %s', err.args[1])


TODO
----

* Tests


Credits
-------

Based on `jsonrpc_requests <http://github.com/gciotta/jsonrpc-requests>` by `Giuseppe Ciotta <gciotta@gmail.com>`_.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jsonrpc_tornado-0.1.0.tar.gz (4.2 kB view details)

Uploaded Source

File details

Details for the file jsonrpc_tornado-0.1.0.tar.gz.

File metadata

File hashes

Hashes for jsonrpc_tornado-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a48ac7feebb9fde68a6dc2386933c30fffea31d9301b431fbe3da7988cf1f8ee
MD5 49743207f6166a62fbf3a7265ed6b66c
BLAKE2b-256 613fadf910f60fcd7d7408ce895e6d460959914e4340549616c324a5df8e237b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page