在 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");
}

参考资料