restfull rql版本功能

cubicweb-rqlcontroller的Python项目详细描述


摘要

为用户提供RQL读/写功能的控制器。

示例用法

此服务的用户必须对其终结点执行http post请求, 这是附加了 “rqlio/1.0”url路径。

发布的数据必须使用application/json mime类型,并包含 形式对(rql_string,rql_args),其中:

  • rql_string是任何有效的rql查询,它可能包含 他们通常的形式
  • rql_args是一个字典,其键是来自 rql_string,值可以是:
    • 实际值
    • 对上一个RQL查询结果的字符串引用,其中 假设引用的rql查询返回一行 单列rset;在这种情况下,字符串引用 必须是“\uu rxxx”,其中xxx是中rql查询的(基于0的)索引 json编码的查询列表。

http请求的响应(在没有错误的情况下)是 json编码的列表。它的长度是请求中的rql查询数, 每个元素都包含来自 相应的查询。

如果出现错误,带有reason键的json对象将解释 问题。

使用python请求的python客户端示例:

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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java什么数据库最类似于Map,每个用户/id存储无限多个“键”和“值”?   java仅使用super pom进行测试   内存不足如何解析java。OutOfMemoryError:Java堆空间在增加堆大小的情况下将意味着延迟OutOfMemoryError   来自另一个类的mysql和java jdbc调用[运行时应用程序]   java通过下拉菜单更改搜索框搜索的内容   JAVAlang.ClassNotFoundException:sun。jdbc。odbc。JdbcOdbcDriver   java Selenium点击链接   JavaSpringHibernate:从唯一值列表中获取对象列表   java Bing广告与桌面身份验证问题   java如何在没有任何外部SDK的情况下从安卓打印到收据打印机?   未调用java菜单片段类   java在IDEA和PyCharm中同时为同一个项目工作   java我们如何为同一个异常提供不同的海关信息   jakarta ee中是否预定义了“请求”和“响应”变量或值?   java更好地解决“之前和之后”难题?   尝试将数据从Excel添加到Java   发送电子邮件的Java代码只适用于一个电子邮件id?   java如何从资产解析XML?