【问题标题】:Alfresco 5.2 REST API CMIS QueryAlfresco 5.2 REST API CMIS 查询
【发布时间】:2017-08-12 07:50:22
【问题描述】:

直到版本 201609,我们使用以下 url 从站点文件夹和数据字典中的脚本获取 nodeRef。我们使用此信息通过 javascript 自动创建规则。

/alfresco/api/-default-/public/cmis/versions/1.1/browser?cmisaction=query&statement=select alfcmis:nodeRef from cmis:folder where cmis:name='Sites' and CONTAINS('PATH:"/ /app:company_home/*"')

结果是:

{
"results": [
{
"properties": {
"alfcmis:nodeRef": {
"id": "alfcmis:nodeRef",
"localName": "nodeRef",
"queryName": "alfcmis:nodeRef",
"type": "id",
"value": [
"workspace://SpacesStore/c08c5d35-f0a3-4330-b783-05c7d773d2d0"
]
}
}
}
],
"hasMoreItems": false,
"numItems": 1
}

在 201612 和 201702 天,尝试执行查询(通过 POST)时,我们收到错误:

{
"exception": "invalidArgument",
"message": "Invalid form encoding!"
}

问题是:使用 REST API 如何在 201612 及更高版本中获得(通过 POST)相同的结果?

【问题讨论】:

标签: rest alfresco cmis


【解决方案1】:

如果您执行 POST,则必须将查询放在正文中,而不是在 URL 中。 (见https://docs.oasis-open.org/cmis/CMIS/v1.1/os/examples/browser/doQuery-request.log。)

如果您执行 GET,请将 cmisaction 替换为 cmisselector。

POST 和 GET 应该返回相同的结果。

【讨论】:

  • 嗨弗洛里安,用“cmisselector”替换“cmisaction”工作很好,包括版本092016。非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-15
  • 2012-10-10
  • 2014-04-08
相关资源
最近更新 更多