在 Google Apps 脚本中禁用或重置执行脚本
Disable or reset the Execution Transcript in Google Apps Script
是否可以在 Google Apps 脚本中禁用或重置执行脚本?
如果没有,运行 需要敏感访问令牌才能进行 API 调用的脚本的最佳方法是什么?
使用基于时间的触发器来调用一个简单的虚拟脚本:
function clearIt() {
Logger.log("hi");
}
该脚本可以每分钟调用一次,也可以通过一次性触发器在特定的其他功能之后专门调用。如果你走一次性路线,你需要删除调用触发器以避免累积:
function sensitive() {
...
ScriptApp.newTrigger("newExecutionTranscript")
.timeBased().after(1) // runs at up to 15m later
.create();
}
function newExecutionTranscript(e) {
const invoker = (!e) ? null : ScriptApp.getProjectTriggers()
.filter(function (t) {
return t.getUniqueId() === e.triggerUid;
})[0];
if (invoker)
ScriptApp.deleteTrigger(invoker);
Logger.log("Done");
}
参考资料
是否可以在 Google Apps 脚本中禁用或重置执行脚本?
如果没有,运行 需要敏感访问令牌才能进行 API 调用的脚本的最佳方法是什么?
使用基于时间的触发器来调用一个简单的虚拟脚本:
function clearIt() {
Logger.log("hi");
}
该脚本可以每分钟调用一次,也可以通过一次性触发器在特定的其他功能之后专门调用。如果你走一次性路线,你需要删除调用触发器以避免累积:
function sensitive() {
...
ScriptApp.newTrigger("newExecutionTranscript")
.timeBased().after(1) // runs at up to 15m later
.create();
}
function newExecutionTranscript(e) {
const invoker = (!e) ? null : ScriptApp.getProjectTriggers()
.filter(function (t) {
return t.getUniqueId() === e.triggerUid;
})[0];
if (invoker)
ScriptApp.deleteTrigger(invoker);
Logger.log("Done");
}
参考资料