我正在使用Google Apps脚本处理来自Google表单的响应数据,该表单要求用户在表单开头证明用户名。用户名已提前提供给他们。我现在正在尝试将给定的用户名与用于响应表单的电子邮件ID(setLimitOneResponsePerUser()
已设置为true
,因此所有用户都必须登录以响应),使用电子表格中的值进行匹配。
但我似乎无法从Response.getRespondentEmail()
获得一个值(返回空白),除非我将Form.setCollectEmail()
设置为true
,我试图避免,因为这意味着他们每次都必须手动输入电子邮件ID。
有没有办法提取用于创建响应的电子邮件ID?
注意:我不能使用事件对象,因为脚本不在ResponseTrigger
上运行,而是在给定时间每天运行,并遍历该表单的所有提交的响应。
回答我自己的问题,万一其他人检查这个帖子。
所以事实证明目前没有办法使用Google Scripts自动收集电子邮件地址,除非:
Form.setCollectEmail()
设置为true
,在这种情况下,被访者每次都必须手动输入一个电子邮件ID(并且可以伪造,因为它不会与用于登录的实际帐户进行交叉检查)要么
ResponseTrigger
上运行,在这种情况下,关联的电子邮件ID将成为Event对象e
的一部分。但是这种方法不能用于分析后期的响应。遗憾的是,这尚未在Google Apps脚本中实现,但让我们看看将来会发生什么。
希望这对任何偶然发现此线程的人都有帮助。