1

このURLを指定します

http://localhost:8080/alfresco/service/api/sites/test-3

私は戻ってきます:

{
   "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"
}

その情報を使用してサイト内のフォルダーのリストを取得するにはどうすればよいですか?

4

4 に答える 4

2

別の API を使用する必要があります。このシェル セッションを見てください。

$ 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..]
于 2012-04-18T07:16:56.463 に答える
1

1 つのオプションは、CMIS を使用することです。ただし、正確なニーズに応じて、組み込みのウ​​ェブスクリプトを使用してリストを作成することもできます

サイトのルート内には、documentLibrary や wiki などのコンテナーがあります。サイトのコンテナーのリストは、container.get Web スクリプトから取得できます。詳細については、org/alfresco/slingshot/documentlibrary/container.get.desc.xml をご覧ください。そのファイルに示されているように、その URL パターンは/slingshot/doclib/containers/{site} です。

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 Web スクリプトを使用して、それを一覧表示できます。

 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を使用して、システムに存在する Web スクリプトを表示し、それらに関する情報を取得することをお勧めします。このような状況では非常に役立ちます。

于 2012-04-18T10:22:41.953 に答える
0

この URL を使用して、フォルダ リストを取得します。

http://localhost:8080/alfresco/service/api/node/workspace:SpacesStore/store_id/b0697dd1-ae94-4bf6-81c8-5e2fa098ddfa/children
于 2014-06-23T04:44:33.123 に答える
0

サイトを読み込みます: http://localhost:8080/alfresco/service/api/sites/test-3

{
    "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

于 2012-04-18T21:53:18.790 に答える