cubicweb-rqlcontroller 1.0.0

Creator: codyrutscher

Last updated:

0 purchases

TODO
Add to Cart

Description:

cubicwebrqlcontroller 1.0.0

Summary
Controller that gives users rql read/ write capabilities. To have token
authentication, install cubicweb_signedrequest.


Sample usage
Users of this service must perform a HTTP POST request to its endpoint,
that is the base url of the CubicWeb application instance appended with
the “rqlio/1.0” url path.
The posted data must use the application/json or multipart/form-data.
For the application/json MIME type, the posted data must contain a list of
pairs of the form (rql_string, rql_args), where:

rql_string is any valid RQL query that may contain mapping keys with
their usual form
rql_args is a dictionary, whose keys are the mapping keys from
rql_string, and the values can be:

actual values
string references to a previous RQL query’s result, with the
assumption that the referenced RQL query returns a single line and
single column rset; under such conditions, a string reference
must be “__rXXX” where XXX is the (0-based) index of the RQL query in
the json-encoded list of queries.



The HTTP request’s response (in case where there is no error), is a
json-encoded list. Its length is the number of RQL queries in the request,
and each element contains the json-encoded result set rows from the
corresponding query.
In case of an error, a json object with a reason key will explain the
problem.
Python client example using python-requests:
import requests
import json

args = [('INSERT CWUser U: U login %(l)s, U upassword %(p)s',
{'l': 'Babar', 'p': 'cubicweb rulez & 42'}),

('INSERT CWGroup G: G name "pachyderms"', {}),

('SET U in_group G WHERE U eid %(u)s, G eid %(g)s',
{'u': '__r0', 'g': '__r1'})
]

resp = requests.post('https://myinstance.example.com/rqlio/1.0'),
data=json.dumps(args),
headers={'Content-Type': 'application/json'})
assert resp.status_code == 200

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.