В задаче будем переводить асинхронный на современный стандарт 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
.