Выполнять код каждую установленную сумму вокруг асинхронной функции

У меня есть этот код:

app.post('/pst', function(req, res) {
        var url = req.body.convo;

        res.render('processing.ejs');

                myAsyncFunction(url).then(result => { 
                    console.log('TAKE A LOOK AT THIS!'); 


                    //take result and send it as text to the client code goes here

                }).catch(err => {
                    console.log(err);
                    res.render('error.ejs');
                })
});

Когда пользователь отправляет сообщение POST, запускается длительная асинхронная функция. Когда это закончено, это передает данные клиенту как текстовый файл. Это прекрасно работает в Localhost, но есть ошибки, когда я загрузил в Heroku. Поскольку функция длинная, для ответа требуется время. Но Heroku вызывает H12 error, ошибка тайм-аута, через 30 секунд

без ответа пройти мимо.

Это было предложено мне пользователем Jfriend00, я могу сделать res.write("") периодически записывать байт в ответ, чтобы сохранить

связь жива.

То, что я спрашиваю, в этой структуре кода.. Можно ли сделать res.write("") каждые, например, 25 секунд, в то время как

работает асинхронная функция? Если да, то как мне структурировать мой код для достижения этой цели?

0 ответов

Другие вопросы по тегам