Я пытаюсь создать клиента с длинным опросом, который бесконечно опрашивает 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()
Кто-нибудь может помочь мне правильно добиться бесконечно долгого опроса без ошибок? Спасибо