问题描述
当我调用http://localhost:8080/nuxeo/api/v1/id/bad6cbc5-b75f-4373-981f-6908cec66779?enrichers.document=children
端点时,它将返回所有子元素包括已删除的元素。但是我只需要获取活动元素,我认为应该向端点添加isTrashed = false查询。但是http://localhost:8080/nuxeo/api/v1/id/bad6cbc5-b75f-4373-981f-6908cec66779?enrichers.document=children&isTrashed=false
没有任何作用。如何使用rest api从nuxeo服务器获取活动子元素?
解决方法
/ nuxeo / api / v1 / id 具有 children 富集器的终结点不支持这种过滤。
我看到两个选择:
- 实施自己的扩展程序,该功能将支持对垃圾文档的过滤。 儿童强化器是由
org.nuxeo.ecm.core.io.marshallers.json.enrichers.ChildrenJsonEnricher
类实现的,因此您可以在那里激发灵感。 - 与页面提供程序一起使用不同的端点,该页面提供程序支持过滤垃圾文档:
/nuxeo/api/v1/search/pp/advanced_document_content/execute?&ecm_parentId=bad6cbc5-b75f-4373-981f-6908cec66779&ecm_trashed=false
第二种选择的好处:
- 分页-只需将
currentPageIndex=0&offset=0&pageSize=20
添加到查询中 - 属性-您可以通过添加标头来定义所需的属性:
properties:dublincore,common,uid,file
- 丰富器-这意味着您可以为每个孩子使用丰富器,并为每个孩子接收例如许可或缩略图URL。为此,请添加以下标头:
enrichers-document: thumbnail,permissions
curl调用示例:
curl -X GET -u Administrator:Administrator \
-H "properties:dublincore,file" \
-H "enrichers-document: thumbnail,permissions" \
"http://localhost:8080/nuxeo/api/v1/search/pp/advanced_document_content/execute?&ecm_parentId=bad6cbc5-b75f-4373-981f-6908cec66779&ecm_trashed=false" | jq