0

我想使用 Apps 脚本为我们的 Google Apps for Business 域开发一个日历/gmail 小工具,以利用它提供的所有好处。

复制 Hello World 小工具示例时:

<?xml version="1.0" encoding="UTF-8" ?> 
<Module>
  <ModulePrefs title="hello world example" /> 
  <Content type="html">
    <![CDATA[ 
      Hello, world!
    ]]>
  </Content> 
</Module>

使用模板 XML doGet()

function doGet(e) {
  var output = ContentService.createTextOutput();
  var xml = '<?xml version="1.0" encoding="UTF-8" ?>\n<Module>\n<ModulePrefs title="Calendar Gadget" />\n<Content type="html"><![CDATA[\nHello, world!\n]]></Content>\n</Module>';
  output.setContent(xml);
  output.setMimeType(ContentService.MimeType.XML);
  return output;
}

生成的服务内容与安装正常的示例小工具相同,但从 GAS 提供的内容未被识别为有效。日历会忽略它,GMail 会声明它无效。

无效的小工具规范。确保 URL 正确且小工具不包含错误。

使用 *.xml 文件名提供 Google Apps 小工具是否是要求的一部分?

4

2 回答 2

0

doGet() 不会逐字返回 XML(或 HTML)。提供给浏览器的确切内容和 doGet() 返回的内容是有区别的。

因此,您的问题的答案是 - 是的,您需要有一个用于 Google 小工具的 XML 文件,并且不能使用 Apps 脚本。您也许可以做的是使用 Apps 脚本来写出 XML 文件。

于 2012-08-13T16:15:33.347 回答
0

使用 ContentService 提供的内容应该与提供的输入相同。请确保将网络应用程序配置为允许匿名访问。

于 2012-08-14T22:06:27.753 回答