Я использую API веб-сокета, который транслирует изменения в реальном времени на удаленной базе данных, которые затем отражаются в локальной базе данных.Операции на моей стороне должны быть выполнены в том же порядке (я создаю и обновляю записи по мере поступления данных).
Моя проблема в том, что сообщения часто приходят навалом, быстрее, чем я могу их обработать и в конечном итогене работает.Есть ли способ заставить onmessage ждать, пока я не буду готов обработать следующий?
Вот пример того, что я пытаюсь без успеха:
async doSomething(ev) {
return new Promise(async (resolve, reject) => {
// database operations, etc.
resolve(true);
});
}
ws.onmessage = async (ev) => {
await doSomething();
}