跳转到主要内容

restfull rql版本功能

项目描述

摘要

控制器,使用户具有rql读写功能。要使用token身份验证,请安装cubicweb_signedrequest

示例用法

此服务用户必须对其端点执行HTTP POST请求,即CubicWeb应用程序实例的基本URL附加“rqlio/1.0”URL路径。

提交的数据必须使用application/jsonmultipart/form-data。对于application/json MIME类型,提交的数据必须包含形式为(rql_string, rql_args)的键值对列表,其中

  • rql_string是任何有效的RQL查询,可以包含具有通常形式的映射键

  • rql_args是一个字典,其键是来自rql_string的映射键,其值可以是

    • 实际值

    • 指向先前RQL查询结果的字符串引用,假定引用的RQL查询返回单行单列rset;在这种情况下,字符串引用必须是“__rXXX”,其中XXX是json编码查询列表中RQL查询的(基于0)索引。

HTTP请求的响应(如果没有错误),是一个json编码的列表。其长度是请求中RQL查询的数量,每个元素都包含对应查询的json编码结果集行。

如果发生错误,将包含有reason键的json对象解释问题。

使用python-requests的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

项目详情


下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

cubicweb-rqlcontroller-1.0.0.tar.gz (9.3 kB 查看散列)

上传时间

构建分发

cubicweb_rqlcontroller-1.0.0-py3-none-any.whl (10.1 kB 查看散列)

上传时间 Python 3

由以下机构支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面