如何获取未使用nuxeo rest端点删除的子元素?

问题描述

当我调用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 富集器的终结点不支持这种过滤。

我看到两个选择:

  1. 实施自己的扩展程序,该功能将支持对垃圾文档的过滤。 儿童强化器是由org.nuxeo.ecm.core.io.marshallers.json.enrichers.ChildrenJsonEnricher类实现的,因此您可以在那里激发灵感。
  2. 与页面提供程序一起使用不同的端点,该页面提供程序支持过滤垃圾文档: /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