-->

如何创建通过REST的API在露天文件夹(How to create folder in Alfre

2019-06-26 14:28发布

我使用Freshdocs为Android

我可以登录使用此API调用的露天服务器:

GET /alfresco/service/api/login?u={username}&pw={password?}

但我怎么创建Alfresco的一个新文件夹?

Answer 1:

有两个主要选择,但它会取决于你想做些什么,和你正在运行的是什么版本的Alfresco的。

假设你想保持的东西很简单,你只是想创建一个文件夹,您正在使用Alfresco的4.1或更高版本,那么你可以使用org.alfresco.repository.node.folder.post webscript。 对于这一点,简单地张贴JSON喜欢的方式

 { "name": "NewNodeName" }

要么

{  
   "name": "NewNodeName",
   "title": "New Node Title",
   "description": "A shiny new node",
   "type": "cm:folder"
}

到API,这需要一个URL像/api/site/folder/{site}/{container}/{path}

或者,如果你想要做一些不同的文件和文件夹的操作(例如,浏览文件夹结构,创建一个文件夹,将文件上传到它等等),那么你应该使用CMIS 。 阿帕奇化学是使用CMIS一个伟大的图书馆,它甚至有一个Android客户端! 为Android客户端的文档仍然被写入想法(才刚刚加入了Android端口),所以你可能需要询问的邮件列表 ,如果你没有时间等待文档。



Answer 2:

要创建您可以通过接口使用下列查询的文件夹:

一)要使用到父文件夹的完整路径创建定义的类型的文件夹

       url: "/../alfresco/service/api/site/folder/" + siteName + "/documentLibrary/" + parentFolderPath
       method: "POST"
       json: {
           name: name
           type: folderType
       }

网址 - 在露天创建网站名称;

parentFolderPath - 路径父文件夹;

命名-folder名;

类型 - 文件夹类型。

例:

     url: "/../alfresco/service/api/site/folder/example/documentLibrary/books"
       method: "POST"
       json: {
           name: "Pushkin"
           type: "cm:folder"
       }

提出请求后,“普希金”文件夹中创建。 此文件夹位于“榜样”网站上的文档库中的“书”的文件夹。

b)以nodeRef要创建的文件夹

nodeRef是在露天的对象ID。 每个对象都有自己的nodeRef。 这个请求创建的文件夹类型的给定对象内部的新对象。

       xml = '<?xml version="1.0" encoding="utf-8"?>' + '<entry xmlns="http://www.w3.org/2005/Atom"
    xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
    xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/">' +
           '<title>' + folderName + '</title>' +
           '<summary>' + folderName + '</summary>' +
           '<cmisra:object>' +
           '<cmis:properties>' +
           '<cmis:propertyId
    propertyDefinitionId="cmis:objectTypeId">' +
           '<cmis:value>' + folderType + '</cmis:value>' +
           '</cmis:propertyId>' +
           '</cmis:properties>' +
           '</cmisra:object>' +
           '</entry>';
       url: "/../alfresco/service/api/node/workspace/SpacesStore/" +
    nodeRef + "/children"
       method: "POST"
       headers: {
           "Content-Type": "application/atom+xml;type=entry"
       },
       xml: xml

FOLDERNAME - 文件夹名称;

folderType - 折叠型;

nodeRef - 在露天文件夹ID。

例:

       nodeRef = b544cd67-e839-4c60-a616-9605fa2affb7;
       xml = '<?xml version="1.0" encoding="utf-8"?>' +
           '<entry xmlns="http://www.w3.org/2005/Atom"
    xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
    xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/">' +
           '<title>Example of creating a folder</title>' +
           '<summary>Example of creating a folder</summary>' +
           '<cmisra:object>' +
           '<cmis:properties>' +
           '<cmis:propertyId propertyDefinitionId="cmis:objectTypeId">' +
           '<cmis:value>cm:folder</cmis:value>' +
           '</cmis:propertyId>' +
           '</cmis:properties>' +
           '</cmisra:object>' +
           '</entry>';
       url: "/../alfresco/service/api/node/workspace/SpacesStore/" + nodeRef + "/children"
       method: "POST"
       headers: {
           "Content-Type": "application/atom+xml;type=entry"
        },
       xml: xml

其他服务和他们的描述,你可以在这里找到:

http://jazzteam.org/en/technical-articles/list-of-alfresco-services/



Answer 3:

您应该使用POST /alfresco/service/api/path/{store_type}/{store_id}/{id}/children

阅读详细信息的文档:

http://wiki.alfresco.com/wiki/Repository_RESTful_API_Reference#Create_folder_or_document_.28createDocument.2C_createFolder.29



文章来源: How to create folder in Alfresco by RESTful API
标签: alfresco