首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Alfresco REST API:如何列出站点中的文件夹?

Alfresco REST API:如何列出站点中的文件夹?
EN

Stack Overflow用户
提问于 2012-04-18 07:24:43
回答 4查看 10.5K关注 0票数 1

给定此URL

代码语言:javascript
复制
http://localhost:8080/alfresco/service/api/sites/test-3

我回来了:

代码语言:javascript
复制
{
   "url": "\/alfresco\/service\/api\/sites\/test-3",
   "sitePreset": "site-dashboard",
   "shortName": "test-3",
   "title": "Test 3",
   "description": "",
   "node": "\/alfresco\/service\/api\/node\/workspace\/SpacesStore\/0352afea-797f-4b9e-be27-3bf37e54a2f1",
   "tagScope": "\/alfresco\/service\/api\/tagscopes\/workspace\/SpacesStore\/0352afea-797f-4b9e-be27-3bf37e54a2f1",
   "siteManagers":
   [
         "admin"
   ],
   "isPublic": true,
   "visibility": "PUBLIC"
}

如何使用该信息获取站点中的文件夹列表?

EN

回答 4

Stack Overflow用户

发布于 2012-04-18 15:16:56

您需要使用不同的API。看看这个shell会话:

代码语言:javascript
复制
$ curl -u admin:admin -i -H "Accept: application/json" -H "Content-Type: application/json" -X POST -d "{'shortName':{'values':['test'], 'match':'foo'}}" http://localhost:8080/alfresco/service/api/sites/query

{
    "url" : "\/alfresco\/service\/api\/sites\/test",
    "sitePreset" : "wcmqs-site-dashboard",
    "shortName" : "test",
    "title" : "test",
    "description" : "",
        "node" : "\/alfresco\/service\/api\/node\/workspace\/SpacesStore\/e597e4c2-d307-46e3-ba4d-b911262e7261",
        "tagScope" : "\/alfresco\/service\/api\/tagscopes\/workspace\/SpacesStore\/e597e4c2-d307-46e3-ba4d-b911262e7261",
    "isPublic" : false,
    "visibility" : "PRIVATE",
    "siteManagers" : 
    [           
         "admin"  

   ]
}

// see the 'node' property up there
$ curl -u admin:admin http://p01:8080/alfresco/service/api/node/workspace/SpacesStore/e597e4c2-d307-46e3-ba4d-b911262e7261/children
[..cmis response here..]
票数 2
EN

Stack Overflow用户

发布于 2012-04-18 18:22:42

一种选择是使用CMIS。根据您的实际需要,您也可以使用一些内置的webscript来完成清单

在站点的根目录中,有一些容器,比如documentLibrary和wiki。您可以从container.get webscript获取站点的容器列表。有关详细信息,请查看org/alfresco/slingshot/documentlibrary/container.get.desc.xml。如文件所示,它URL模式是/slingshot/doclib/containers/{site}

代码语言:javascript
复制
curl -u admin:admin http://localhost:8080/alfresco/service/slingshot/doclib/containers/test
{
   "containers":
   [
      {
         "name": "documentLibrary",
         "description": "Document Library",
         "nodeRef": "workspace://SpacesStore/973338a0-db39-458e-a10d-396f00cb16a3",
         "type": "cm:folder"
      }
   ]
}

接下来,当您知道要使用哪个容器或容器中的文件夹时,treenode.get webscript可以让您列出它,例如

代码语言:javascript
复制
 curl -u admin:admin http://localhost:8080/alfresco/service/slingshot/doclib/treenode/site/test/documentLibary
 {
    "totalResults": 0,
    "resultsTrimmed": false,
    "parent":
    {
       "nodeRef": "workspace://SpacesStore/92e4f8de-b919-4540-a27a-16c4e53a57bc",
       "userAccess":
       {
          "create": true,
          "edit": true,
          "delete": true
       }
    },
    "items":
    [
    ]
 }

我也可以推荐你使用http://localhost:8080/alfresco/service/index来查看你的系统中有哪些网页脚本,并获得关于它们的信息,它对像这样的情况很有帮助

票数 1
EN

Stack Overflow用户

发布于 2012-04-19 05:53:19

加载站点:http://localhost:8080/alfresco/service/api/sites/test-3

代码语言:javascript
复制
{
    "url": "\/alfresco\/service\/api\/sites\/test-3",
    "sitePreset": "site-dashboard",
    "shortName": "test-3",
    "title": "test 3",
    "description": "",
    "node": "\/alfresco\/service\/api\/node\/workspace\/SpacesStore\/0352afea-797f-4b9e-be27-3bf37e54a2f1",
    "tagScope": "\/alfresco\/service\/api\/tagscopes\/workspace\/SpacesStore\/0352afea-797f-4b9e-be27-3bf37e54a2f1",
    "siteManagers":
    [
            "admin"
    ],
    "isPublic": true,
    "visibility": "PUBLIC"
}

使用从节点属性中提取的ID获取站点内容:http://localhost:8080/alfresco/service/api/node/workspace/SpacesStore/0352afea-797f-4b9e-be27-3bf37e54a2f1/children

里面是一个标题为"documentLibrary“的节点。使用它的ID GUID,您可以获取更多的子项

http://localhost:8080/alfresco/service/cmis/s/workspace:SpacesStore/i/b68db1eb-547d-4b2c-b5eb-ba207a275789/children

如果您有自定义属性,它们将出现在使用此API调用的子项上。

使用子项的ID,您可以获取其内容。

http://localhost:8080/alfresco/service/cmis/s/workspace:SpacesStore/i/2d53f464-bea0-46f3-aa0c-10b3302e661c/content

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10200630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档