async/await vs ajax
Имея такую функцию:
async function sendg(B) {
if (window.fetch) {
try {
const response = await fetch(B);
if (!response.ok) throw new Error('Ошибка HTTP: ' + response.status);
const data0 = await response.text();
const data2 = data0.trim();
const data = data2.replace(/[\n\r\t]/g, '');
pr.innerText += "response = " + data + "\n";
} catch (error) {
console.error('Ошибка:', error);
pr.innerText += "Ошибка: " + error + "\n";
}
}
}
которая должна отправить на сервер (логин пароль) и получить ответ который влияет на все последующие операции javascript и которых очень много (тысяча+ строк кода). Без ответа сервера нельзя выполнять следующие 1000+ строк остального кода, т.к. ответ должен содержать число кторое используется в дальнейших расчетах. Если нет await то все операции последовательны, но оно есть, и это await допускает что все 1000 строк начнут выполняться до того как получен ответ-разрешение сервера. Как сделать чтобы запрос мог быть блокирующим, т.е. приостановить выполнение остальных операций на время ожидания ответа сервера? ИИ от google.com мне написал так: "Синхронный Ajax был ампутирован из стандартов, лишив разработчиков простого, привычного способа выполнения блокирующих запросов. async/await — это замена (протез), которая требует другого, более сложного подхода к структурированию кода."