Apache flex ce在那里,CQ将使用一些JSON进行响应,我们接下来将使用这些JSON
检查文件是否已发布。可能是用户已将同名图像上载到同一位置。JSON响应有一个results节点,我检查它是否为1。如果是,那么我查看“页面[0]。复制”以查看它是否有一个名为“操作”的节点。如果是,我会查看值是否为“激活”。如果是,它已经出版了。在其他每一种情况下,我都会尝试发布它Apache flex ce在那里,CQ将使用一些JSON进行响应,我们接下来将使用这些JSON,apache-flex,aem,Apache Flex,Aem,检查文件是否已发布。可能是用户已将同名图像上载到同一位置。JSON响应有一个results节点,我检查它是否为1。如果是,那么我查看“页面[0]。复制”以查看它是否有一个名为“操作”的节点。如果是,我会查看值是否为“激活”。如果是,它已经出版了。在其他每一种情况下,我都会尝试发布它 发布命令以激活(发布)。url是[instance]/bin/replicate.json。内容类型=应用程序/x-www-form-urlencoded;字符集=UTF-8。表单如下所示: 路径:/content/
路径:/content/dam/[destination]/[filename]
cmd:激活
字符集:utf-8
注意:刚才看到表单规范中的“charset”是斜体。请注意,我使用的是(下划线)字符集(下划线)。这两个实例是author和publish实例吗?如果不工作的是发布实例,则DAM工作流可能不会运行(它们不应该运行),或者您的CQ调度程序正在阻止某些内容。我更新了我的问题,以包含有关实例的更多详细信息。是的。我最终这样做了,并发现在5.4实例上,它发布到/tmp/fileupload,然后再次发布以发出@MoveFrom命令。
POST /content/dam/test/foo.createasset.html HTTP/1.1
Host: xxxxxxxx:4502
Content-type: multipart/form-data; boundary=doudrbitutcfasnbhlpogirdctuxem
--doudrbitutcfasnbhlpogirdctuxem
Content-Disposition: form-data; name="file"
home.png
--doudrbitutcfasnbhlpogirdctuxem
Content-Disposition: form-data; name="Filename"
home.png
--doudrbitutcfasnbhlpogirdctuxem
Content-Disposition: form-data; name="home.png"; filename="home.png"
Content-Type: application/octet-stream
*** image data ***
--doudrbitutcfasnbhlpogirdctuxem
Content-Disposition: form-data; name="Upload"
Submit Query
--doudrbitutcfasnbhlpogirdctuxem--
./jcr:contentType dam:Asset
var service:HTTPService = new HTTPService();
var url:String = instanceUrl + "/tmp/fileupload";
service.url = url;
var headerData : Object = new Object();
headerData['Cache-Control'] = 'no-store';
headerData['Authorization'] = getAuthString();
service.headers = headerData;
service.contentType = "application/x-www-form-urlencoded; charset=UTF-8";
service.method = URLRequestMethod.POST;
var urlVar:URLVariables = new URLVariables();
var command:String = "/var/dam/" + destPath + "/" + filename + "@MoveFrom";
var arg:String = "/tmp/fileupload/" + filename;
urlVar[command] = arg;
urlVar["_charset_"] = "utf-8";
var token:AsyncToken = service.send(urlVar);