29

我已收到以下错误的 341 错误通知电子邮件

很抱歉,发生服务器错误。请稍等,然后重试。

通知电子邮件仅说明发生问题的函数的名称。

该脚本现在未运行。任何尝试在脚本中运行任何函数都会出现上述错误。我使用脚本添加到电子表格中的自定义菜单也不见了。我发现无法调试脚本,因为脚本上的每个操作都会给我上述错误。


以下是出现错误的函数

function crunchEmails() {
  var sheet   = SpreadsheetApp.getActiveSheet();
  var gLabel  = sheet.getRange("gmailLabel").getValues();
   
   
  // check the current SpreadSheet for limits and create a 
  // new SpreadSheet if limits are approaching
  checkSpreadSheet();
  
  
  var gFolder = sheet.getRange("outputFolderName").getValues();
  var gSpreadSheetName = sheet.getRange("outputSpreadsheetPrefix").getValues();
  var threadsPerSearch  = sheet.getRange("threadsPerSearch").getValues(); 

  // Number of emails per search:
  var threads = GmailApp.search("-label:" + gLabel, 0, threadsPerSearch); 
  
  for (var x=0; x<threads.length; x++) {
        
    var messages = threads[x].getMessages();
    
    // getting null...a thread without messages is weird
    if(messages != null) {
     for (var y=0; y<messages.length; y++) {
        
        updateSpreadSheet(messages[y]);
       
      }
    }
   
    GmailApp.getUserLabelByName(gLabel).addToThread(threads[x]);
  }
}

我被困在茫茫荒野中,不知道为什么会这样?

有人可以指导解决问题吗?

4

4 回答 4

15

问题解决了。

问题在于其他函数中的字符串替换函数。我正在使用带有正则表达式的字符串替换函数作为替换函数的输入。正则表达式不正确,因为我收到了上述错误。

这真的很奇怪,至少 GAS 应该给出一些适当的错误。

于 2013-09-21T17:51:43.480 回答
10
  • 脚本 -> 资源 -> 高级谷歌服务 -> 开启 Drive API
  • 单击下面的消息“Google Cloud Platform API Dashboard”以打开脚本的云项目。
  • 选择项目后,在搜索栏中搜索“Drive API”-> ENABLE,对“Google Drive API”执行相同操作。

完成,脚本中的 DriveApp 功能不再出现“我们很抱歉服务器错误”。

于 2020-10-14T11:13:28.727 回答
2

Hemaka Raveen 提供的答案似乎是正确的,它帮助我解决了同样的问题(它出现在我的一个函数想要访问我没有启用的 API 时)。

然而,在 2020 年,Google 为 Apps Script 推出了新的代码编辑器,Hemaka Raveen 的回答与旧版编辑器有关。要在新编辑器中启用 Google Drive API,请打开您的脚本,在左侧找到Services选项卡,单击+图标,选择Drive API,然后单击Add

请记住,在此处启用它只是过程的一部分。您必须在 Google Cloud Platform 中启用它,但该步骤与 Hemaka Raveen 的描述中的相同。

于 2021-01-19T11:16:24.720 回答
0

似乎是一般的“我不知道出了什么问题”的错误消息。在我的情况下,我添加了一个库,使用该库的脚本的其他用户收到此消息,无论调用什么函数或触发触发(甚至 onOpen())

当我将库部署为“版本 1”时,它得到了解决。

于 2021-07-16T13:06:43.497 回答