无法从onEdit内部调用我的函数

我有这个onEdit函数,它首先检查所做的编辑是否在定义的区域内。然后,它获取已编辑的行,将其记录下来,并应该通过Webhook将相同的日志消息发送到Discord通道。我似乎无法使其正常工作。当我从我拥有的其他函数内部调用postMessageToDiscord函数时,该函数工作正常,但在onEdit内部却无法正常运行。关于它为什么起作用的任何想法?

onEdit函数:

function onEdit(edit){
 if (
    edit.range.columnStart >= 3 &&
    edit.range.columnEnd <= 9 &&
    edit.range.rowStart >= 13 &&
    edit.range.rowEnd <= 101
  )
  {
    Logger.log("Edit in range");
    var editRow = (edit.range.rowStart,edit.range.rowEnd)
  }
  Logger.log("Row " + String(editRow) + " has been edited on Cadet Log " + edit.range.getSheet().getSheetName());
  postMessageToDiscord("Row " + String(editRow) + " has been edited on Cadet Log " + edit.range.getSheet().getSheetName());
}

postMessageToDiscord函数:

function postMessageToDiscord(message) {

  message = message || "Hunter fucked up,disregard."

  var discordUrl = LINK REDactED FOR SECURITY;
  var payload = JSON.stringify({content: message});

  var params = {
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded'
    },method: "POST",payload: payload,muteHttpExceptions: true
  };

  var response = UrlFetchApp.fetch(discordUrl,params);

  Logger.log(response.getcontentText());

}
a13555596279 回答:无法从onEdit内部调用我的函数

@Dimu Designs

提供

对于简单的触发器(例如onEdit(e)),您无法调用需要用户授权的服务(在您的情况下为UrlFetchApp.fetch());参见restrictions。您必须创建一个可安装的触发器,并让用户在使用脚本之前对您的脚本进行授权。有关可安装的触发器,请参见documentation

本文链接:https://www.f2er.com/3128653.html

大家都在问