【问题标题】:Sample rest url to retrieve content from alfresco从 alfresco 检索内容的示例 rest url
【发布时间】:2012-11-27 12:03:55
【问题描述】:

我想使用 restful 在露天目录文件夹中检索 sample.html 的内容。

从 alfresco 文档中,我得到了以下 url 来检索文档的内容。但我不知道究竟什么是财产,stor_typestore_ididattach

GET /alfresco/service/api/node/content{property}/{store_type}/{store_id}/{id}?a={attach?}

如果有人向我解释上述其余 url 属性并提供一个示例,我将不胜感激。

【问题讨论】:

  • 为什么投反对票?尽管这个问题非常本地化,但问题非常普遍(Alfresco REST API 的文档非常少,并且没有很多(任何?)示例)。例如,relevant page on the wiki 没有此特定 API 的示例(尽管它确实解释了 attach 的含义)。

标签: alfresco


【解决方案1】:

CMIS Web Scripts ReferenceRepository RESTful API Reference 提供了更多信息(但没有示例)。

  • property 是为了获取内容而要遵循的节点的属性 - 这将默认为 cm:content 所以通常可以省略
  • store_type 通常是实时应用程序数据的“工作区” - 请参阅 this forum discussion 关于商店类型等
  • store_id 将是普通文件的“SpacesStore” - 请参阅其他商店的 this forum discussion
  • id 是节点的唯一标识符(在给定的存储中),例如986b162e-0867-4a7b-9f4f-0e3837cdc97b
  • attach - 如果为真,则强制将内容下载为附件(默认为假) - 我认为这是在浏览器中触发“另存为...”而不是直接流式传输内容?

示例 GET URL(未经测试 - 当然您需要使用有效的主机、端口和 id

http://my.example.com:8080/alfresco/service/api/node/content/workspace/SpacesStore/986b162e-0867-4a7b-9f4f-0e3837cdc97b

store_typestore_idid 一起构成一个 NodeRef,其中 uniquely identifies a node,例如

workspace://SpacesStore/f1a5e908-80cb-4c6e-b919-cc80fe53b835

在 Jeff Potts 的tutorial on Curl and web scripts 上有几个示例(虽然不是这个确切的 API 调用)。

如果您想通过名称和路径(不知道节点 ID)下载文件,那么您需要使用另一个 API,因为您使用的 API 要求您知道节点 ID。

This page 提到了一个接受路径和文件名的直接下载 URL,例如

/alfresco/download/direct?path=/Company%20Home/My%20Home%20Space/myimage.jpg

根据访问控制,您可能需要将 login ticket 参数添加到此 URL,例如&alf_ticket=1234567890,其中1234567890login URL提供的安全票据。


注意:尽管我参考了上面的 CMIS Web 脚本参考,另请参阅 this postingJira ticket 声明 CMIS Web 脚本 URL 已被弃用,即(/alfresco/service/cmis/alfresco/cmis

【讨论】:

  • 请注意,CMIS Web 脚本 URL 已被弃用,因为现在在存储库 webapp 中提供的 OpenCMIS servlet 提供了改进的体验 - 正如您链接到的论坛帖子中所述。
猜你喜欢
  • 1970-01-01
  • 2015-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-06
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多