Как видно из документов, блок catch
будет достигнут, только если запрос не завершился. Когда есть доступный код состояния (и все другие данные также принимаются) fetch
будет разрешаться, и поэтому будет достигнут блок then
.
Обещание, возвращенное из fetch ( ) не будет отклонять статус HTTP-сообщений, даже если ответ представляет собой HTTP 404 или 500. Вместо этого он будет нормально работать (при нормальном статусе установлен на false), и он будет отклонен только при сбое сети или если что-либо помешало запросу комплектующие. - Источник
blockquote>Итак, все, что вам нужно сделать, это записать
resp.status
вместоresp
.fetch(`http://${this.serverAddress}/reset`) .then((resp) => { Logger.debug(JSON.stringify(resp.status)); }) .catch((err) => { Logger.debug(JSON.stringify(err)); });
В блоке catch я принимаю сообщение об ошибке с сообщением «Failed to fetch». Информация о статусе отсутствует.
blockquote>Поэтому, если блок
catch
получает вызов, запрос еще не закончил. Это может быть вызвано тем, что вы не используете такие опции, какmethod
,headers
, ... Если необходимо, какое и какие значения зависят от используемого вами бэкэнда.
Есть ли причина, по которой вы устанавливаете URL фонового изображения встроенным, а затем объявляете его как ничего в файле CSS?
Встроенный CSS будет иметь приоритет над внешним файлом.
Это также обсуждается здесь: CSS, который имеет приоритет, встроенный или класс?