我正在使用Freshdocs for Android
我可以使用此API调用登录Alfresco服务器:
GET /alfresco/service/api/login?u={username}&pw={password?}
但是如何在Alfresco中创建一个新文件夹?
答案 0 :(得分:3)
有两个主要选项,但它取决于您想要做什么,以及您正在运行的Alfresco版本。
假设您想要保持简单,并且您只想创建一个文件夹,并且您正在使用Alfresco 4.1或更高版本,那么您可以使用org.alfresco.repository.node.folder.post
webscript。为此,只需发布像
{ "name": "NewNodeName" }
或
{
"name": "NewNodeName",
"title": "New Node Title",
"description": "A shiny new node",
"type": "cm:folder"
}
访问API,其中包含/api/site/folder/{site}/{container}/{path}
或者,如果您想要执行许多不同的文件和文件夹操作(例如,导航文件夹结构,创建文件夹,上传文件等),那么您应该使用CMIS。 Apache Chemistry是一个很好的用于CMIS的库,它甚至还有一个Android客户端! Android客户端的文档仍在编写思想(Android端口刚刚添加),因此如果您没有时间等待文档,可能需要在mailing list上询问。 / p>
答案 1 :(得分:2)
要通过api创建文件夹,您可以使用以下查询:
a)使用父文件夹的完整路径创建已定义的类型文件夹
url: "/../alfresco/service/api/site/folder/" + siteName + "/documentLibrary/" + parentFolderPath
method: "POST"
json: {
name: name
type: folderType
}
siteName - 在Alfresco中创建的网站名称;
parentFolderPath - 父文件夹的路径;
name -folder name;
type - 文件夹类型。
示例:
url: "/../alfresco/service/api/site/folder/example/documentLibrary/books"
method: "POST"
json: {
name: "Pushkin"
type: "cm:folder"
}
创建请求后,“Pushkin”文件夹被创建。此文件夹位于“示例”网站上的文档库的“books”文件夹中。
b)按nodeRef
创建文件夹nodeRef是Alfresco中的对象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 - Alfresco中的文件夹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/
答案 2 :(得分:1)
你应该使用
POST /alfresco/service/api/path/{store_type}/{store_id}/{id}/children
阅读文档以获取详细信息: