Бесконечный длинный опрос с использованием Javascript (nodejs) - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь создать клиента с длинным опросом, который бесконечно опрашивает API. Это довольно просто при использовании python из-за его синхронной природы, но в javascript l oop не ждет завершения почтового запроса перед отправкой новых запросов. Дальнейшие исследования показали, что мне не следует использовать циклы, а лучше использовать рекурсивную функцию.

Вот упрощенный код javascript, но я боюсь, что в конечном итоге он приведет к ошибке «Превышен максимальный размер стека вызовов».

function collect(date) {
    needle('post', url, pollData, { json: true, response_timeout: 60000 })
        .then(response => {
            try {
                console.log(response.body.toSTring())
                collect()
            }
            catch (error) {
                console.log(`Response Code: ${response.statusCode}, ${error.message}`)
                collect()
            }
        })
        .catch(error => {
            console.log(error.message)
            collect()
        })
}

collect()

Кто-нибудь может помочь мне правильно добиться бесконечно долгого опроса без ошибок? Спасибо

...