使用Google Apps脚本从Google Forms响应中提取响应者电子邮件

时间:2019-03-19 10:20:23

标签: javascript google-apps-script google-form

我正在使用Google Apps脚本来处理来自Google表单的响应数据,并且该表单要求用户在表单开始时证明用户名。用户名已提前提供给他们。 我现在正在尝试将给定的用户名与用于响应表单的电子邮件ID相匹配(setLimitOneResponsePerUser()已设置为true,因此所有用户都必须登录才能响应),使用电子表格中的值。

但是,除非我将Response.getRespondentEmail()设置为Form.setCollectEmail(),否则我似乎无法从true获取值(返回空白),因为这意味着他们每次都必须手动输入电子邮件ID。

是否可以提取用于创建回复的电子邮件ID?

注意:我不能使用事件对象,因为脚本不在ResponseTrigger上运行,而是每天在给定时间运行,并遍历该表单的所有已提交响应。

1 个答案:

答案 0 :(得分:0)

回答我自己的问题,以防其他人查看此线程。

因此事实证明,除非存在以下两种情况,否则目前无法使用Google脚本自动收集电子邮件地址:

  1. Form.setCollectEmail()设置为true,在这种情况下,受访者每次必须手动输入电子邮件ID(并且可以被伪造,因为不会与实际地址进行交叉核对。用于登录的帐户)

OR

  1. 该脚本在表单ResponseTrigger上运行,在这种情况下,关联的电子邮件ID将成为事件对象e的一部分。但是这种方法不能用于以后的响应分析。

不幸的是,这尚未在Google Apps脚本中实现,但让我们看看将来会发生什么。

希望这对偶然发现此线程的其他人很有帮助。