如何通过REST API在Alfresco中检索版本化文档的内容?

时间:2016-07-08 08:46:44

标签: alfresco alfresco-webscripts

有没有办法检索文档的版本化内容?可能是原生Alfresco的REST API。

2 个答案:

答案 0 :(得分:3)

MatteoCalò给出的答案在技术上是正确的。该API确实存在,并且按照他的说法行事。但是,该端点标有“有限支持”,这意味着您在使用它时应该小心。相反,您应该更喜欢API标记为“PUBLIC”或使用基于标准的API,如Alfresco支持的CMIS。

CMIS浏览器绑定可用于获取对象的内容,如下所示: http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.1/browser/root/test/test.txt

它的属性如下: http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.1/browser/root/test/test.txt?cmisselector=object

它的版本如下: http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.1/browser/root/test/test.txt?cmisselector=versions

在这个例子中,我正在通过路径检索对象。我的测试对象位于名为test的文件夹中,我的对象名称是test.txt。另一方面,如果你知道对象的ID,你可以得到这样的版本: http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.1/browser/root?cmisselector=versions&objectId=54f47f6f-ee88-4612-8206-ebca8f5b7e6b;3.0

任何时候您都可以使用CMIS URL来满足您的需求,您应该使用它,特别是如果备选方案是可能不完全公开的Web脚本。

答案 1 :(得分:1)

有以下API: http://HOST:PORT/share/proxy/alfresco/api/version?nodeRef=NODEREF

它返回一个包含NODEREF元数据的版本列表,如下所示:

[{
  "nodeRef": "versionStore://version2Store/60d3d217-e80b-4066-9e43-6361bb573462",
  "name": "prova1.json",
  "label": "1.11",
  "description": "",
  "createdDate": "08 lug 2016 12:21:49 GMT+0200 (CEST)",
  "createdDateISO": "2016-07-08T12:21:49.843+02:00",
  "creator": {
    "userName": "admin",
    "firstName": "Administrator",
    "lastName": ""
  }
},
{
  "nodeRef": "versionStore://version2Store/a1b38d5e-2556-416a-908e-180687d3ff8c",
  "name": "prova1.json",
  "label": "1.10",
  "description": "",
  "createdDate": "07 lug 2016 13:20:44 GMT+0200 (CEST)",
  "createdDateISO": "2016-07-07T13:20:44.804+02:00",
  "creator": {
    "userName": "admin",
    "firstName": "Administrator",
    "lastName": ""
  }
}]