4

我正在尝试使用内置 JavaScript 技术的 InDesign 实现文件上传。

基本上,该脚本将 InDesign 文档导出为 PDF,然后尝试将文件上传到网络服务器。对于上传,我使用处理 HTTP 请求的可扩展插件。

我能够发出一些基本的 GET 和 POST 请求,但我无法发出文件上传的 POST 请求。

这是基本代码:

   var req = new http.HTTPRequest("POST", "http://mysite.com);

   var type = "application/pdf";
   var boundary = "--012345678910";

   var myTitle = "\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\n"+title+"\r\n"+boundary;
   var myFile= "\r\nContent-Disposition: form-data; name=\"file\"; filename=\""+pdfFileName+"\"\r\nContent-Type: "+type+"\r\n\r\n"+file_contents+"\r\n"+boundary+"--";

   var myData = boundary + myTitle + myFile;
   req.content(myData);    

   req.header("User-Agent", "MyUserAgent");
   req.header("Content-Type", "multipart/form-data; boundary=012345678910");
   // make request
   res = req.do();

我能够从 Ruby 脚本和一些 REST 客户端上传具有相同标题的相同文件等。

当我查看到达服务器的内容时​​,似乎表单数据不包含在 post 参数中。

所以我的问题是,是否有人曾使用 InDesign JavaScript 和可扩展插件成功上传文件。可扩展文档并不是很有帮助,也许我遗漏了一些东西。我也对替代品持开放态度。

4

0 回答 0