google 使用 UrlfetchApp.fetchAll() 或异步/等待多个 http 请求的应用程序脚本?
google apps script with UrlfetchApp.fetchAll() or with async/ await for multiple http requests?
我过去在 Google Apps Script 中创建了一些项目用于一些自动化,其中还包括一些 http-fetches。过去,这与 .fetch()
配合得很好,但现在我们需要获取多个 url。
由于应用程序脚本现在使用 V8 运行时,我考虑过使用 promises 来实现。我对 async/await 和一般的承诺也很陌生。
所以我考虑在异步函数中尝试 UrlfetchApp.fetch()
,只是为了发现执行时间没有差异。
红色,由于 GAS-API-设计,无论您是否将函数声明为异步,UrlfetchApp.fetch()
将始终同步。但我找不到这方面的详细信息。
这是真的吗?
如果是:那么获取多个 url 的唯一方法是 UrlfetchApp.fetchAll()
,对吗?
如果否:意味着简单 .fetch()
可以在异步函数中工作(并且可以链接到 Promise.all())
那么我会在这方面投入更多时间。
所以,是或否在这里会有很大帮助!
目前,Urlfetchapp 同步运行,虽然支持 promises 语法,但它也同步运行。
Then the only way to fetch multiple urls would be UrlfetchApp.fetchAll(), right?
是
我过去在 Google Apps Script 中创建了一些项目用于一些自动化,其中还包括一些 http-fetches。过去,这与 .fetch()
配合得很好,但现在我们需要获取多个 url。
由于应用程序脚本现在使用 V8 运行时,我考虑过使用 promises 来实现。我对 async/await 和一般的承诺也很陌生。
所以我考虑在异步函数中尝试 UrlfetchApp.fetch()
,只是为了发现执行时间没有差异。
红色,由于 GAS-API-设计,无论您是否将函数声明为异步,UrlfetchApp.fetch()
将始终同步。但我找不到这方面的详细信息。
这是真的吗?
如果是:那么获取多个 url 的唯一方法是 UrlfetchApp.fetchAll()
,对吗?
如果否:意味着简单 .fetch()
可以在异步函数中工作(并且可以链接到 Promise.all())
那么我会在这方面投入更多时间。
所以,是或否在这里会有很大帮助!
目前,Urlfetchapp 同步运行,虽然支持 promises 语法,但它也同步运行。
Then the only way to fetch multiple urls would be UrlfetchApp.fetchAll(), right?
是