Не удалось загрузить ресурс в Chrome
На веб-странице есть куча изображений.
Другие браузеры загружают их правильно, но Chrome их не загружает.
В консоли разработчика отображается следующее сообщение для каждого изображения:
Не удалось загрузить ресурс
Эта проблема появляется только в Chrome.
Что это?
Ответы
Ответ 1
Недавно я столкнулся с этой проблемой и обнаружил, что это вызвано расширением "Adblock" (моя лучшая догадка заключается в том, что это связано с тем, что у меня были слова "баннер" и "объявление" в имени файла).
В качестве быстрого теста, чтобы узнать, есть ли эта проблема, запустите Chrome в режиме инкогнито с отключенными расширениями (ctrl + shift + n) и посмотрите, работает ли ваша страница сейчас. Обратите внимание, что по умолчанию все расширения будут отключены в режиме инкогнито, если вы специально не запустили их для запуска (через chrome://extensions
).
Ответ 2
Проверьте вкладку сети, чтобы узнать, не удалось ли Chrome загрузить файл ресурсов.
Ответ 3
В случае, если это кому-то поможет, у меня возникла такая же проблема и выяснилось, что это вызвано расширением Chrome Do not Track Plus (версия 2.0.8). Когда я отключил это расширение, изображение загрузилось без ошибок.
Ответ 4
Существует также возможность отключения кеша для сетевых ресурсов. Это может быть лучше для среды разработки.
- Щелкните правой кнопкой мыши chrome
- Перейдите к разделу "проверка элемента"
- Найдите вкладку "сеть" где-то наверху. Нажмите на нее.
- Установите флажок "отключить кеш".
Ответ 5
Решение Кабира верное. Мой образ URL был
/images/ads/homepage/small-banners01.png,
и это привело к отключению AdBlock. Для меня это не было проблемой междоменного доступа, и она не удалась как на локальном хосте, так и в Интернете.
Я использовал вкладку сети Chrome для отладки и поиска очень запутывающих результатов для этих конкретных изображений, которые не удалось загрузить. Первый запрос не будет возвращать ответ (статус "(ожидается)" ). Позже на линии появился второй запрос, который перечислил исходный URL-адрес, а затем "Перенаправить" в качестве Инициатора. Заголовки запроса перенаправления были для этой идентичной короткой строки данных с кодировкой base64, и каждый ответ не ответил, хотя статус был "Успешным":
GET data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg== HTTP/1.1
Позже я заметил, что эти встроенные стили были добавлены ко всем элементам изображения:
display: none !important;
visibility: hidden !important;
opacity: 0 !important;
Наконец, я не получил сообщений о "не удалось загрузить ресурс" в консоли, но это:
Port error: Could not establish connection. Receiving end does not exist.
Если какая-либо из этих вещей происходит с вами, она, вероятно, имеет какое-то отношение к AdBlock. Выключите и/или переименуйте файлы изображений.
Кроме того, из-за встроенного CSS, созданного AdBlock, макет слайдера рекламных акций отбрасывается. Хотя мне удалось исправить проблемы компоновки с помощью CSS, прежде чем найти решение Kabir, CSS был несколько лишним и повлиял на гибкость ползунка для обработки изображений нескольких размеров.
Думаю, урок: будьте осторожны, как вы называете ваши изображения. Эти изображения не были злонамеренными или раздражающими, поскольку они предупреждали посетителей о текущих акциях и специальных предложениях ненавязчивым способом.
Ответ 6
Если изображения сгенерированы через ASP Response.Write()
, убедитесь, что вы не вызываете Response.Close();
. Chrome не нравится.
Ответ 7
Я получал эту ошибку, только в Chrome (последняя версия 24.0.1312.57 м), и только если изображение было больше, чем html img. Я использовал php script для вывода изображения следующим образом:
header('Content-Length: '.strlen($data));
header("Content-type: image/{$ext}");
echo base64_decode($data);
Я решил добавить 1 к длине изображения:
header('Content-Length: '.strlen($data) + 1);
header("Content-type: image/{$ext}");
echo base64_decode($data);
Появляется сообщение о том, что Chrome не ожидает правильного количества байтов.
Протестировано с успехом в Chrome и IE 9. Надеюсь, что эта помощь.
Ответ 8
Существует временная работа в Повторная (временная) поддержка showModalDialog в Chrome (для Windows) 37+.
В принципе, создайте новую строку в реестре в
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\EnableDeprecatedWebPlatformFeatures
Под ключом EnableDeprecatedWebPlatformFeatures создайте строковое значение с именем 1
и значением ShowModalDialog_EffectiveUntil20150430
. Чтобы убедиться, что политика включена, перейдите на chrome://policy
URL.
Ответ 9
В Chrome (Canary) я отключил расширение "Appspector". Это очистило ошибку.
Ответ 10
Факты:
Ответ 11
FYI - У меня тоже была эта проблема, и оказалось, что мой html перечислил файл .jpg с .JPG в кепках, но сам файл был строчным .jpg. Это визуализировалось локально и использовало Codekit, но когда оно было перенесено в Интернет, оно не загрузилось. Просто изменив имена файлов, чтобы иметь расширение в нижнем регистре .jpg, чтобы соответствовать html, сделал трюк.
Ответ 12
Я обновил браузер Chrome до последней версии, и проблема была исправлена.
Ответ 13
Я когда-либо оставлял свой компьютер в спящем режиме, я не выключаю свой компьютер, я использую Windows 10. Я просто перезагружаю компьютер, а затем возвращаюсь в нормальное состояние. У меня была такая же проблема!