获取存储库 Alfresco 中的所有文件夹和文档 Restful
Get All Folder and Documents in Repository Alfresco Restful
我正在学习 Alfresco。我想使用 Restful API 获取存储库中的所有文件夹和文档。我该怎么做?
我们可以使用 alfresco.For 的 webscript 创建 restfull 服务,了解 webscript 你可以在下面关注 link。
https://wiki.alfresco.com/wiki/Web_Scripts
要创建用于列出文件夹的网络脚本,下面是您需要创建的文件。
1.list-folders.get.desc.xml
<webscript>
<shortname>Folder Listing Utility</shortname>
<description>Java-backed implementation of listing folder contents
</description>
<url>/javadir/{folderpath}?verbose={verbose?}</url>
<authentication>user</authentication>
</webscript>
2.list-folders.get.html.ftl
<html>
<head>
<title>Folder ${folder.displayPath}/${folder.name}</title>
</head>
<body>
<p>Alfresco ${server.edition} Edition v${server.version} : dir</p>
<p>Contents of folder ${folder.displayPath}/${folder.name}</p>
<table>
<#list folder.children as child>
<tr>
<td><#if child.isContainer>d</#if></td>
<#if verbose>
<td>${child.properties.modifier}</td>
<td><#if child.isDocument>
${child.properties.content.size}</#if></td>
<td>${child.properties.modified?date}</td>
</#if>
<td>${child.name}</td>
</tr>
</#list>
</table>
</body>
</html>
网络脚本说明指定了一个包含标记 {folderpath} 和 {verbose?} 的 URI 模板。 folderpath 标记表示要列出的文件夹,详细 URI 参数指定是否需要详细列表。 HTML 响应模板呈现指定文件夹的内容,同时考虑到详细标志。它通过访问名为 folder 和 verbose 的 Web 脚本模型值来实现。
你需要把上面的文件放在路径下面。
公司主页 > 数据字典 > Web 脚本扩展 > org
网络脚本是构建您自己的 API 的好方法,但在这种情况下,您应该可以使用 Alfresco 为您提供的 OOTB 构建 API。
您可以使用 REST APIs getDescendants 调用获取所有 folders/documents。
请参阅 API 规范以了解详细信息:
它 returns 树中定义的级别数的指定文件夹的后代对象列表。
GET /alfresco/service/api/node/{store_type}/{store_id}/{id}/descendants?types={types}&filter={filter?}&depth={depth?}
它从用 ID 参数标识的文件夹开始,并将可选参数应用于您的调用。这意味着您可以,例如按类型(文档、文件夹等)过滤并定义要查询的深度。使用-1 returns 你所有级别。
可以使用以下端点获取文档和文件夹列表。
GET /alfresco/service/slingshot/doclib/doclist/{type}/site/{site}/{container}
type = documents or folders
container = documentLibrary
参考:
浏览器可用的网络脚本在这里:
http://server:port/alfresco/service/index/all
文档列表 Webscript
http://server:port/alfresco/service/script/org/alfresco/slingshot/documentlibrary/doclist.get
Alfresco 版本:社区 v5.0.0
我正在学习 Alfresco。我想使用 Restful API 获取存储库中的所有文件夹和文档。我该怎么做?
我们可以使用 alfresco.For 的 webscript 创建 restfull 服务,了解 webscript 你可以在下面关注 link。
https://wiki.alfresco.com/wiki/Web_Scripts
要创建用于列出文件夹的网络脚本,下面是您需要创建的文件。
1.list-folders.get.desc.xml
<webscript>
<shortname>Folder Listing Utility</shortname>
<description>Java-backed implementation of listing folder contents
</description>
<url>/javadir/{folderpath}?verbose={verbose?}</url>
<authentication>user</authentication>
</webscript>
2.list-folders.get.html.ftl
<html>
<head>
<title>Folder ${folder.displayPath}/${folder.name}</title>
</head>
<body>
<p>Alfresco ${server.edition} Edition v${server.version} : dir</p>
<p>Contents of folder ${folder.displayPath}/${folder.name}</p>
<table>
<#list folder.children as child>
<tr>
<td><#if child.isContainer>d</#if></td>
<#if verbose>
<td>${child.properties.modifier}</td>
<td><#if child.isDocument>
${child.properties.content.size}</#if></td>
<td>${child.properties.modified?date}</td>
</#if>
<td>${child.name}</td>
</tr>
</#list>
</table>
</body>
</html>
网络脚本说明指定了一个包含标记 {folderpath} 和 {verbose?} 的 URI 模板。 folderpath 标记表示要列出的文件夹,详细 URI 参数指定是否需要详细列表。 HTML 响应模板呈现指定文件夹的内容,同时考虑到详细标志。它通过访问名为 folder 和 verbose 的 Web 脚本模型值来实现。
你需要把上面的文件放在路径下面。
公司主页 > 数据字典 > Web 脚本扩展 > org
网络脚本是构建您自己的 API 的好方法,但在这种情况下,您应该可以使用 Alfresco 为您提供的 OOTB 构建 API。
您可以使用 REST APIs getDescendants 调用获取所有 folders/documents。 请参阅 API 规范以了解详细信息:
它 returns 树中定义的级别数的指定文件夹的后代对象列表。
GET /alfresco/service/api/node/{store_type}/{store_id}/{id}/descendants?types={types}&filter={filter?}&depth={depth?}
它从用 ID 参数标识的文件夹开始,并将可选参数应用于您的调用。这意味着您可以,例如按类型(文档、文件夹等)过滤并定义要查询的深度。使用-1 returns 你所有级别。
可以使用以下端点获取文档和文件夹列表。
GET /alfresco/service/slingshot/doclib/doclist/{type}/site/{site}/{container}
type = documents or folders
container = documentLibrary
参考:
浏览器可用的网络脚本在这里:
http://server:port/alfresco/service/index/all
文档列表 Webscript
http://server:port/alfresco/service/script/org/alfresco/slingshot/documentlibrary/doclist.get
Alfresco 版本:社区 v5.0.0