Я копался, и я не могу найти ссылки или документацию о том, как я могу использовать асинхронные функции в Google App Script, я обнаружил, что люди упоминают, что это возможно, но не упоминают, как ...
Может ли кто-нибудь указать мне правильное направление или привести пример?Обещания, обратные вызовы или что-то, что может помочь мне в этом.
У меня есть эта функция, позволяющая назвать ее foo
, выполнение которой занимает некоторое время (достаточно долго, чтобы оно могло выдержать тайм-аут вызова HTTP).
Что я пытаюсь сделать, это выполнить рефакторинг таким образом, чтобы он работал следующим образом
function doPost(e) {
// parsing and getting values from e
var returnValue = foo(par1, par2, par3);
return ContentService
.createTextOutput(JSON.stringify(returnValue))
.setMimeType(ContentService.MimeType.JSON);
}
function foo(par1, par2, par3) {
var returnValue = something(par1, par2, par3); // get the value I need to return;
// continue in an Async way, or schedule execution for something else
// and allow the function to continue It's flow
return returnValue;
}
Теперь я хочу реализовать этот бит в foo
, потому что он занимает много времении я не хочу рисковать тайм-аутом, также логика, которая происходит там, полностью независима от клиента, так что это не имеет значения, мне просто нужно возвращаемое значение, которое я получу раньше.
Также я думаю, что стоит упомянуть, что это развернуто на google drive как веб-приложение.