4

我正在尝试使用 Google 脚本的内容服务将信息从电子表格导出到 XML 文件。代码如下所示:

function makeXML() {
    var StringToXML = "<tag></tag>";
    var output = ContentService.createTextOutput();
    output.setMimeType(ContentService.MimeType.XML);
    output.setContent(StringToXML);
    output.downloadAsFile("f.xml");
}

当我启动此功能时 - 没有任何反应。虽然没有错误,但该功能运行正常。此外,当我尝试通过在某些行中放置 msgboxes 来调试它时(例如通过获取输出内容并发送消息),一切看起来都很好。除了downloadAsFile.

我也尝试过不设置 mime 类型(默认为 TEXT),但仍然downloadAsFile无法正常工作。试过谷歌浏览器、火狐。

如何让它发挥作用?

4

1 回答 1

7

您需要返回输出。这是您修改后的代码

function makeXML() {
    var StringToXML = "<tag></tag>";
    var output = ContentService.createTextOutput();
    output.setMimeType(ContentService.MimeType.XML);
    output.setContent(StringToXML);
    output.downloadAsFile("f.xml");
    return output;
}

如果你根据你的方法在doGet或doPost中调用这个函数,浏览器会提示你下载文件。

于 2012-07-27T08:31:09.043 回答