У меня проблемы с асинхронным вызовом ответа моего сервера несколькими вызовами состояния на запросы http моего клиента. Я использую Node.js в облегченной сборке Raspberry Pi, поэтому для этого я использую как можно меньше внешних библиотек.
Я продолжаю сталкиваться с проблемой response.write () в сочетании с response.end () для получения информации о состоянии сервера обратно к клиенту. Вот что я делаю с обещанием, связывающим маршрут моего сервера.
else if (request.url === '/scope'){
new Promise((resolve,reject)=>{
if(request.url){
response.write('streaming')
response.end()
resolve(trigger())
} else {
reject('not streaming')
}
}).then((results)=>{
response.write('done streaming')
response.end()
}
Моя функция триггера () занимает значительное время для завершения. Поэтому я хотел бы отправить состояние с response.write, но не могу с двумя response.end (). Если я использую один из них в конце, тогда мой клиент получает оба состояния «потоковое» и «завершенное потоковое» одновременно.
Другой способ, которым я думал об этом, - обратные вызовы.
Можете ли вы помочь мне асинхронно выполнить несколько HTTP-запросов response.write, чтобы обновить состояние приложения до одного HTTP-запроса?