运行 Google App 脚本手动和触发器的不同结果
Different results from running Google App Script manually and by triggers
我希望每个用户(在我工作的公司)将 Gmail 数据登录到(第 3 方系统)Harvest。
我通过 html-webbapp 分发了一个 Apps 脚本,其中每个用户通过按下按钮启动触发器(运行单一功能)。
我的问题是只有在手动运行时一切才能正常工作。触发该功能后,Gmail 数据将记录到我的用户(而不是运行它的用户)。我已经登录到一个用户(遇到这个问题)并且触发器设置正确。手动触发功能正常运行
伪代码:
var user = Session.getEffectiveUser().getEmail();
var gmailData = GmailApp.getInboxThreads(0,1)[0];
UrlFetchApp.fetch(
"https://api.com",
{
"headers": {'Authorization':"hash of admin (my) user/pw"},
"method": "post",
"payload": "add data " + gmailData + " to user " + user
}
);
尝试
Session.getEffectiveUser().getEmail();
可安装的触发器(在这种情况下以编程方式)在创建触发器的用户和getEffectiveUser()
returns 进程中的脚本实例的授权用户的授权下运行。
Webapp 运行 旧版本只有一个结果,手册是当前代码。更新到新版本解决了我的问题。
我希望每个用户(在我工作的公司)将 Gmail 数据登录到(第 3 方系统)Harvest。
我通过 html-webbapp 分发了一个 Apps 脚本,其中每个用户通过按下按钮启动触发器(运行单一功能)。
我的问题是只有在手动运行时一切才能正常工作。触发该功能后,Gmail 数据将记录到我的用户(而不是运行它的用户)。我已经登录到一个用户(遇到这个问题)并且触发器设置正确。手动触发功能正常运行
伪代码:
var user = Session.getEffectiveUser().getEmail();
var gmailData = GmailApp.getInboxThreads(0,1)[0];
UrlFetchApp.fetch(
"https://api.com",
{
"headers": {'Authorization':"hash of admin (my) user/pw"},
"method": "post",
"payload": "add data " + gmailData + " to user " + user
}
);
尝试
Session.getEffectiveUser().getEmail();
可安装的触发器(在这种情况下以编程方式)在创建触发器的用户和getEffectiveUser()
returns 进程中的脚本实例的授权用户的授权下运行。
Webapp 运行 旧版本只有一个结果,手册是当前代码。更新到新版本解决了我的问题。