已实现邮件路由功能,如何提取Google Form回答并发送至用户邮箱?
从Google Form提取回答并生成定制邮件的实现方案
核心逻辑
给Google Form绑定Google Apps Script,利用表单提交触发事件捕获用户回答数据,将数据插入邮件正文模板,再调用你已有的邮件路由逻辑完成发送。
具体操作步骤
给表单绑定脚本
打开你的Google Form,点击右上角「扩展程序」→「Apps Script」,进入脚本编辑界面。编写提交触发函数
在脚本编辑器中添加以下代码(根据你的现有路由逻辑调整细节):function onFormSubmit(e) { // 提取表单提交的所有回答 const responses = e.response.getItemResponses(); const userAnswers = {}; // 把问题和对应答案整理成键值对 responses.forEach(response => { const questionTitle = response.getItem().getTitle(); const userAnswer = response.getResponse(); // 处理多选类字段的数组型答案 userAnswers[questionTitle] = Array.isArray(userAnswer) ? userAnswer.join('、') : userAnswer; }); // 生成带用户回答的邮件正文(替换成你的模板) const emailContent = ` 您好,这是您的表单提交确认: 姓名:${userAnswers['姓名']} 联系邮箱:${userAnswers['联系邮箱']} 反馈内容:${userAnswers['问题反馈']} `; // 调用你已有的邮件路由函数发送邮件 const recipientEmail = userAnswers['联系邮箱']; // 确保表单有收集邮箱的字段 // 替换成你实际的邮件路由函数名和参数格式 yourExistingEmailRouteFunction(recipientEmail, emailContent); }配置触发规则
在脚本编辑器左侧点击「触发器」图标→「添加触发器」:- 选择触发函数:
onFormSubmit - 事件源选「表单提交」
- 事件类型选「当用户提交表单时」
保存后按照提示完成脚本权限授权。
- 选择触发函数:
适配你的现有代码
- 把代码中
userAnswers的键名替换成你表单里实际的问题标题 - 将
yourExistingEmailRouteFunction替换成你已有的邮件路由函数名称,调整参数传递逻辑 - 确保表单包含用于指定收件人的邮箱字段
- 把代码中
测试验证
手动提交一次表单,在脚本编辑器的「查看」→「日志」里检查执行情况,确认邮件是否正确发送且正文包含用户回答。
内容的提问来源于stack exchange,提问作者Gab3694
相关产品推荐
相关产品推荐

