В задаче будем переводить асинхронный на современный стандарт JavaScript
Для начала поставь все зависимости (npm i), запусти сервер командой npm run server и открой localhost:3000
-
Перепиши в файле
static/focus.jsфункциюsendRequestтак, чтобы она возвращала промис. А в функцииrunжди их при помощи async/await. -
Перепиши функцию
sendRequestс использованиемfetchвместоXHR. -
Измени адрес одного из запросов. Например, вместо
analyticsпусть запрос идет наanalitics.
Посмотри, что приходит с сервера в этом случае. Посмотри, что содержится в объекте ответа (response).
Научись обрабатывать такие ситуации:
- если статус ответа ≥ 300 (поле
okв ответе не равноtrue), то выводи алерт с кодом и статусом запроса - после такой ошибки не должно случиться ничего страшного: код не должен падать и не должен делать новых запросов
- Сейчас запросы до сервера отправляются последовательно, хотя почти все наши запросы можно делать параллельно. Перепиши функцию
run, чтобы она использовалаPromise.all.