将文件上传到Google网站。 Google Apps脚本

时间:2013-01-04 04:17:01

标签: google-apps-script google-sites

我尝试将文件上传到我的'mysitename'Google Site。我使用这个脚本,但它不起作用

function doGet(e) {

  var app = UiApp.createApplication().setTitle("Upload");
  var formContent = app.createVerticalPanel();
  formContent.add(app.createFileUpload().setName('thefile'));
  formContent.add(app.createSubmitButton());
  var form = app.createFormPanel();
  form.add(formContent);
  app.add(form);
  return app;
}

function doPost(e) {
  try{
  var fileBlob = e.parameter.thefile;
  var pages = SitesApp.getSite('site', 'mysitename').getChildren();
  var attachments = pages[0].getAttachments();
  attachments[0].setFrom(fileBlob);
  }catch(e){
    Logger.log(e.message);
  }
}

我捕获错误“无法调用方法”setFrom“of undefined”最后一个模态窗口“遇到错误:发生意外错误”

这是有效的!但我不知道,如何使用文档中的这个循环“从Blob设置此附件的数据,内容类型和名称。为Web附件引发异常。”这是什么意思“为Web附件引发例外”?我将被迫使用“try-catch-exception”

请帮我做!

1 个答案:

答案 0 :(得分:1)

我认为错误在行

var pages = SitesApp.getSite('sites', 'mysitename').getChildren();

文档说

  

方法getSite(域名,名称)   获取具有给定域和名称的站点。   使用“site”作为消费者站点的域。

因此,如果您在域内,请使用域名,否则请使用“网站”代替“网站”