在Google Apps脚本中异步运行函数脚本、函数、Google、Apps

2023-09-03 13:27:51 作者:蘸点软妹酱

我正在制作一个调用GAS函数的Slack机器人。除了Slack显示错误消息外,其他一切都正常,因为它在调用API时只等待3秒的响应。

有没有人能帮我弄清楚如何异步运行Everyday 2,这样我就可以在响应完成之前返回响应。我尝试了承诺和回调,但解决不了这个问题。

function doPost(e){

  const promise = new Promise(everyDay2);

  return ContentService.createTextOutput('thinking...');

}

推荐答案

Google Apps Script 的使用

承诺不起作用。使用triggers instead:

function doPost(e) {
  runAfter1s('everyDay2');
  return ContentService.createTextOutput('thinking...');
}

const runAfter1s = func =>
  ScriptApp.newTrigger(func)
    .timeBased()
    .after(1000)
    .create();

请确保在触发后删除everyDay2内创建的触发器。