我创建了一个脚本,用于在收到重要消息后发送 SMS 通知(根据本教程)。但我经常收到通知,该脚本未能成功完成。错误消息是Cannot connect to Gmail (line 13)
,第 13 行是:
var threads = GmailApp.getUserLabelByName('SMS').getThreads();
我应该如何处理?即只是停止执行并等待下一次运行?
我创建了一个脚本,用于在收到重要消息后发送 SMS 通知(根据本教程)。但我经常收到通知,该脚本未能成功完成。错误消息是Cannot connect to Gmail (line 13)
,第 13 行是:
var threads = GmailApp.getUserLabelByName('SMS').getThreads();
我应该如何处理?即只是停止执行并等待下一次运行?
一个不错的方法是将代码包装在一个while循环和一个try catch块中,然后尝试直到操作成功。就像是 ...
var retryCount = 0;
var success = false ;
while (!success & retryCount++ <=5 ){
try{
var threads = GmailApp.getUserLabelByName('SMS').getThreads();
// Other code here
success = true;
}catch(ex){
Logger.log(ex);
}
Utilities.sleep(1000);
}
为什么不是 try/catch 结构?如果您遵循 tuto,您将有一个电子表格可用于记录错误并检查执行是否完成,以便您决定要做什么。