有没有办法检索文档的版本化内容?可能是通过原生Alfresco的REST API。
Matteo Calò给出的答案在技术上是正确的。该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脚本。
有以下 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": ""
}
}]