Plone JSON API -- 路由
项目描述
Plone JSON API 路由
- 作者:
Ramon Bartl (RIDING BYTES - http://ridingbytes.com)
- 版本:
0.9.3
最新构建状态
主分支 https://github.com/collective/plone.jsonapi.routes
简介
这是一个plone.jsonapi.core的附加包,它提供了一些基本URL,用于Plone标准内容(以及更多)。
动机
routes包基于plone.jsonapi.core包构建,允许Plone开发者构建现代(JavaScript)Web UI,这些UI通过RESTful API与他们的Plone站点进行通信。
兼容性
plone.jsonapi.routes与Plone 4和5兼容。
文档
http://plonejsonapiroutes.readthedocs.org
源代码
https://github.com/collective/plone.jsonapi.routes/tree/master/docs
查看行动
在youtube上有一个小型的技术演示
许可证
MIT - 随你做
变更日志
0.9.4 - 2017-10-17
变更
合并大脑数据到对象信息
处理Zope日期时间字段
支持Backbone.js REST API
0.9.3 - 2017-05-14
变更
IDataManager 现在包含一个 json_data 方法,用于返回合适的JSON返回结构或委托给 IFieldManager.json_data 方法。请参阅文档中的“自定义”部分以获取更多详细信息。
增加了对 z3c.relationfield.interfaces.IRelationList 字段的兼容性
增加了对 plone.app.textfield.interfaces.IRichText 字段的兼容性
增加了对 plone.app.blob.interfaces.IBlobField 字段的兼容性
进行了更多的代码清理和重构(离1.0.0发布越来越近!)
0.9.2 - 2017-05-12
变更
为 get 和 set 字段级别的值添加了 IFieldManager 适配器。
从版本路由JSON响应中移除了 build 号码。
内容路由得到了改进。
API重构。
改进了 users 路由。
更新了文档。
0.9.1 - 2017-04-20
变更
添加了 ICatalog 和 ICatalogQuery 适配器,用于全面搜索控制。请参阅文档了解使用方法。
移除了 query 模块,改用新的适配器。
移除了多重目录查询功能。如果您需要,请定义自定义的 ICatalog 适配器。
为所有 portal_types 添加了通用路由提供程序。请注意,旧式的路由提供程序,例如 folders、documents 等,现已过时。请使用较低的门户类型名称,例如 folder、docuememt 等。
users 路由现在显示了更多用户详细信息,并且结果现在已分批处理。
移除了默认的 getObjPositionInParent 排序。请通过 sort_on 明确指定。
Plone站点的UID现在为‘0’而不是0。
进行了大量代码重构和清理。
0.9.0 - 2017-01-12
变更
API方法 get_items 和 get_batched 现在接受关键字参数。关键字可以是目录索引,例如 id=document-1 或完整的目录查询对象,例如 query={‘portal_type’: ‘Document’}。
将 get_contents 方法更改为使用 query 模块的 search 功能。
添加了更多 doctests。
0.8.9 - 2017-01-11
变更
可以通过 catalog 请求参数设置查询目录。
优化了搜索逻辑。
修复了请求中多个 portal_type 参数的问题。
代码重构。
更多测试。
0.8.8 - 2017-01-10
变更
处理多个内容(可能位于不同的目录中)的目录查询。
修复了批导航在多个 portal_type 请求参数使用时没有显示更多结果的问题。
0.8.7 - 2017-01-10
变更
处理引用字段:包含引用的引用字段可以使用字典更新,例如
{ uid: <UID of a content containing a reference field>, ReferenceField: { "title": "New Title" } }
将模块 underscore 添加到测试套件中。
为整个对象添加了验证。
从 Archtype 工具获取查询目录,默认为 portal_catalog。
在路由提供程序中使用显式命名空间。
处理引用字段(包含 ImplicitAcquisitionWrapper 对象的字段)
添加了 ZCML 指令以启用/禁用路由注册(默认启用)
<!-- Disable route registration --> <plone:jsonapi register_api_routes="False" />
版本路由现在是标准路由提供程序的一部分
删除了高级查询处理
0.8.6 - 2016-04-08
修复了损坏的发布 0.8.5
0.8.5 - 2016-04-08
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/59:非标准内容类型的API URL
https://github.com/collective/plone.jsonapi.routes/issues/60:向路由注册添加命名空间
https://github.com/collective/plone.jsonapi.routes/issues/63:处理富文本字段
https://github.com/collective/plone.jsonapi.routes/issues/82:Plone 5 的 CSFR 保护
https://github.com/collective/plone.jsonapi.routes/issues/80:Plone 5 的测试
https://github.com/collective/plone.jsonapi.routes/issues/77:创建文件的问题
https://github.com/collective/plone.jsonapi.routes/issues/62:‘reference_catalog’未找到
https://github.com/collective/plone.jsonapi.routes/pull/75:修复了在 zope 根上调用 API 的问题
https://github.com/collective/plone.jsonapi.routes/pull/74:重用并改进代码以检查请求中的参数是否具有True值
https://github.com/collective/plone.jsonapi.routes/pull/73:使用指定符格式化字符串(有助于与Python 2.6兼容,提高代码可读性)
0.8.4 - 2016-01-14
已关闭问题
https://github.com/collective/plone.jsonapi.routes/pull/66:api路由:共享(文档)
https://github.com/collective/plone.jsonapi.routes/pull/65:api路由:共享(代码)
https://github.com/collective/plone.jsonapi.routes/pull/61:使用IConstrainTypes适配器处理Dexterity内容
API更改
可以显示对象的共享信息。使用?sharing=yes
0.8.3 - 2015-09-14
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/58:单元测试:为适配器模块添加测试
https://github.com/collective/plone.jsonapi.routes/issues/57:API更改:工作流数据为可选
https://github.com/collective/plone.jsonapi.routes/issues/54:让完整标志覆盖“uid规则”
https://github.com/collective/plone.jsonapi.routes/issues/53:单元测试:为API模块添加测试
API更改
文件数据现在默认不包含。使用?filedata=yes
工作流数据现在默认不包含。使用?workflow=yes
工作流数据现在位于密钥workflow
现在可以取消完整标志,即使显示完整对象时也是如此 ?complete=no
已删除密钥state - 请使用 review_state 代替
现在为脑结果包含父URL数据
0.8.2 - 2015-09-09
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/52:在GET API中处理字段未经授权的错误
https://github.com/collective/plone.jsonapi.routes/issues/51:默认数据适配器缺失
0.8.1 - 2015-09-06
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/50:API路由抛出错误
https://github.com/collective/plone.jsonapi.routes/pull/37:包含自定义元数据列
https://github.com/collective/plone.jsonapi.routes/pull/37:包含自定义元数据列
https://github.com/collective/plone.jsonapi.routes/issues/49:设置ID时抛出跟踪回溯
https://github.com/collective/plone.jsonapi.routes/issues/48:实现剪切/复制/粘贴路由
https://github.com/collective/plone.jsonapi.routes/issues/46:路由提供者 portal 抛出TypeError
https://github.com/collective/plone.jsonapi.routes/issues/47:ZCML指令以启用已安装的AdvancedQuery
增强功能
API操作以剪切/复制/粘贴内容
新的路由提供者 plonesites
支持目录脑模式
0.8 - 2015-07-20
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/45:添加身份验证路由
https://github.com/collective/plone.jsonapi.routes/issues/44:将文件名添加到JSON数据中
https://github.com/collective/plone.jsonapi.routes/issues/43:API:中间文件夹创建
https://github.com/collective/plone.jsonapi.routes/issues/41:字段类型验证
https://github.com/collective/plone.jsonapi.routes/issues/42:Dexterity文件CT的内容类型
0.7 - 2015-07-09
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/9:处理Dexterity行为字段
https://github.com/collective/plone.jsonapi.routes/issues/38:文件名处理
https://github.com/collective/plone.jsonapi.routes/issues/36:Mime 类型处理
其他更改
更新文档
请求模块:添加了辅助函数
Travis CI 集成
0.6 - 2015-02-22
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/33:图像详情 URL 抛出错误
https://github.com/collective/plone.jsonapi.routes/issues/34:失败的 POST 请求返回 HTTP 200
https://github.com/collective/plone.jsonapi.routes/issues/35:DataManager 未检查字段权限
0.5 - 2015-02-20
已关闭问题
https://github.com/collective/plone.jsonapi.routes/issues/32:为新的 ZPublisher 记录行为添加文档
https://github.com/collective/plone.jsonapi.routes/issues/31:更改默认排序顺序为升序
https://github.com/collective/plone.jsonapi.routes/pull/30:修复标准查询忽略 sort_on 和 sort_order
https://github.com/collective/plone.jsonapi.routes/issues/27:查询不支持 ZPublisher 记录格式
https://github.com/collective/plone.jsonapi.routes/issues/25:添加对 Plone 4.2 的支持
其他更改
添加批量适配器
添加更多测试
0.4 - 2015-01-13
已修复问题
https://github.com/collective/plone.jsonapi.routes/issues/22:更新/创建响应中缺少绝对 URL
https://github.com/collective/plone.jsonapi.routes/issues/21:图像路由抛出错误
增强功能
https://github.com/collective/plone.jsonapi.routes/issues/20:支持对 DateTime 索引的查询
https://github.com/collective/plone.jsonapi.routes/issues/23:支持对创建/修改 DateTime 范围的查询
其他更改
添加了 IDataManager 字段数据管理器
添加了 /auth 路由以强制基本身份验证
添加了一个自定义异常类以设置正确的响应状态
添加了 recent_modified 和 recent_created 处理
为 api 和 request 模块添加了 unittests
不再传递请求 - 现在所有请求都由请求模块处理
0.3 - 2014-10-14
已修复问题
https://github.com/collective/plone.jsonapi.routes/issues/16:无法使用 base64 编码的数据创建/更新文件
https://github.com/collective/plone.jsonapi.routes/issues/10:在 NamedBlobFile dexterity 字段上失败
https://github.com/collective/plone.jsonapi.routes/pull/11:脑适配器中的拼写错误
https://github.com/collective/plone.jsonapi.routes/issues/14:缺少完整对象的 UIDs
增强功能
https://github.com/collective/plone.jsonapi.routes/issues/12:添加分批处理
https://github.com/collective/plone.jsonapi.routes/issues/13:添加一个标志,以便立即返回完整的对象结果
https://github.com/collective/plone.jsonapi.routes/issues/19:需要在不使用 uid 的情况下使用文件路径对文件执行 GET 操作
https://github.com/collective/plone.jsonapi.routes/issues/18:处理目标
https://github.com/collective/plone.jsonapi.routes/issues/3:在包内添加 buildout 配置
文档
https://github.com/collective/plone.jsonapi.routes/issues/2:开始编写 Sphinx 文档
0.2 - 2014-03-05
已修复问题
https://github.com/ramonski/plone.jsonapi.routes/issues/5:支持 Dexterity
https://github.com/ramonski/plone.jsonapi.routes/issues/4:UID URL 更新失败
https://github.com/ramonski/plone.jsonapi.routes/issues/1:开始了一些基本的浏览器测试
API更改
提供API根URL。
图像和文件字段现在以嵌套结构渲染,例如
{ data: b64, size: 42, content_type: "image/png" }
尽可能提供工作流信息,例如
{ status: "Private", review_state: "private", transitions: [ { url: ".../content_status_modify?workflow_action=submit", display: "Puts your item in a review queue, so it can be published on the site.", value: "submit" }, ], workflow: "simple_publication_workflow" }
0.1 - 2014-01-23
第一个公共版本
项目详情
plone.jsonapi.routes-0.9.4.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a849609ce11fa5aff5e2d4a7b40312cd7bf97510dc44418ae271870b599bcbb8 |
|
MD5 | cfc24fe175652404dcafdea68569e87c |
|
BLAKE2b-256 | 9033584e85f1a058f4cc6fd0f161f8db85b41d6f9f8b48cec9cf97c73cc5ea6c |