Google Apps脚本 - 脚本之间的通信

时间:2012-11-13 22:35:04

标签: google-apps-script google-calendar-api

您好我的问题如下:我想创建一个小网页,可以在Google日历中创建活动,但有一些限制。在我的情况下,我的室友可以编辑这个日历来预订洗衣机。这个预订不能重叠,而且我们所有人都可以使用它们的天数有限。
我创建了私人日历,我创建了验证请求的脚本,如果一切都是确定将事件添加到日历。此脚本以我身份执行(因为只有我有权编辑此日历)。 但我在获取用户执行此脚本(我或我的一个室友)的信息时遇到问题。类会话包含2个方法getActiveUser()和getEffectiveUser()但活动用户不起作用(我猜是因为隐私保护策略)。但是,如果我创建另一个脚本,执行用户访问网站,我可以获得活跃用户 有人知道是否有可能以某种方式在这两个嵌入同一网站的脚本之间进行交流?我想将活动用户的电子邮件从一个脚本传递到另一个脚本。或者你知道更好的解决方案如何解决这个问题?

此致 亚当

2 个答案:

答案 0 :(得分:3)

正如您所注意到的,您需要将脚本设置为以访问它的用户身份运行以获取其电子邮件。然后,不是直接访问日历(显然你不能),你可以调用另一个发布的脚本,但是自己运行允许匿名访问,它将从“查看”脚本接收这个请求,并为它创建日历事件。 / p>

发布此“背景”脚本后,获取其网址并在UrlfetchApp.fetch调用它时使用它。然后将参数作为url paremeters传递(如果您更喜欢使用post而不是get,则传递给有效负载。)

后台脚本甚至可以使用ContentService为调用脚本提供良好的返回值。

答案 1 :(得分:0)

当然,你可以这样做,但并不像你想的那么简单。使管理员级脚本运行响应其他脚本的Web服务。它可能被黑客攻击,因为你无法验证用户,但是comon,这是一个洗衣机!