Ошибка cast_sender.js: не удалось загрузить ресурс: net :: ERR_FAILED в Chrome

185

Недавно я начал получать следующие ошибки консоли без каких-либо изменений кода.

Я не устанавливал никаких расширений в последнее время.

Failed to load resource: net::ERR_FAILED chrome-extension://enhhojjnijigcajfphajepfemndkmdlo/cast_sender.js
Failed to load resource: net::ERR_FAILED chrome-extension://hfaagokkkhdbgiakmmlclaapfelnkoah/cast_sender.js
Failed to load resource: net::ERR_FAILED chrome-extension://enhhojjnijigcajfphajepfemndkmdlo/cast_sender.js
Failed to load resource: net::ERR_FAILED chrome-extension://fmfcbgogabcbclcofgocippekhfcmgfj/cast_sender.js
Failed to load resource: net::ERR_FAILED

У меня есть несколько YouTube-проигрывателей, которые вызывают эту ошибку, но они просты:

<iframe width="100%" height="100%" src="http://www.youtube.com/embed/OUR_YOUTUBE_ID?showinfo=0&amp;wmode=transparent" frameborder="0" allowfullscreen=""></iframe>

Кто-нибудь еще испытывал это?

Alex
источник
1
Я тоже бью это. Это заставляет ваш JS не запускаться на странице?
Давко
1
Нечасто да. Мне удалось повторить его несколько раз, когда он сломал бы JS на странице, но в большинстве случаев я просто вижу ошибки консоли.
Алекс
Встроенное видео все еще загружается для вас? Это не для меня, что плохо.
kleinfreund
1
Удивительно, но поддержка Google AdWords блокирует сайты, которые имеют эту проблему. очень расстраивает
Мартин Олдерсон
1
Попробуйте отключить расширение Adblocker для сайта. Работал на меня.
Робот Бой

Ответы:

140

Очевидно, YouTube постоянно опрашивает скрипты Google Cast, даже если расширение не установлено.

От одного комментатора :

... похоже, что Chrome пытается получить cast_sender.js на страницах с содержанием YouTube. Я предполагаю, что когда Chrome видит мультимедиа, он может транслировать его и пытается получить доступ к расширению Chromecast. Когда расширение отсутствует, выдается ошибка.

Читать далее

Единственное решение, с которым я столкнулся, - это установить расширение Google Cast , независимо от того, нужно оно вам или нет. Затем вы можете скрыть кнопку панели инструментов.

Для получения дополнительной информации и обновлений см. Этот вопрос . Вот официальный выпуск .

Isherwood
источник
Я получаю это на встроенном устройстве, которое не дает возможность добавлять расширения и вообще не позволяет воспроизводить видео. Очистка кеша исправляет это, но это не вариант. Я вижу ответ, который кто-то опубликовал, об изменении «embed» на «v» в URL, но я использую API IFrame YouTube вместо того, чтобы напрямую делать это с URL.
flarn2006
@ flarn2006, это похоже на новый вопрос, который не должен быть представлен как комментарий к очень старому ответу. Пожалуйста, удалите его и повторно отправьте как таковое.
Ишервуд
40

Я собираюсь добавить к ответу, данному ранее .

Это не ошибка в вашем коде или коде браузера. Это код JavaScript внутри iframe, который опрашивает расширения, с которыми он может взаимодействовать в случае их установки (вероятно, чтобы определить, установлено ли расширение).

Посмотрите на источник www-embed-player.js(загруженный из s.ytimg.comYouTube статических файлов CDN). Вы найдете следующее:

function Wj(a){return"chrome-extension://"+a+"/cast_sender.js"}
sompylasar
источник
5
Что вы предлагаете тогда? Я не хочу устанавливать расширение Google Cast! Что-то вроде переопределения этой функции?
Августин Ридингер
Я не могу найти его в источнике: s.ytimg.com/yts/jsbin/www-widgetapi-vfllgPgCl/www-widgetapi.js
Августин Ридингер
4
Прежде всего: переопределение этой функции не должно работать, и вам не следует переопределять функции сайтов других людей. Если вам это удастся, вам удастся взломать Google Chrome, YouTube или оба. Кроме того, это их ошибка, а не ваша. Просто отправьте отчет об ошибке или что-то в этом роде. Во-вторых, @sompylasar упоминает, что код находится в источнике файла с именем www-embed-player.js. Можете ли вы объяснить нам, почему вы смотрите на другой файл, но ожидаете, что эта функция все же будет там?
toon81
21

Чтобы перестать видеть эти ошибки cast_sender.js, отредактируйте ссылку на YouTube в iframe src и измените embedнаv

developer1011
источник
3
Это сработало для меня, хотя я добавлю, что вы должны делать это только для Chrome, потому что в Firefox это приведет к загрузке видео в формате Flash и покажет сообщение о заблокированном плагине.
Р. Солсбери
Требование, чтобы пользователь установил flash в firefox, хотя это и раздражает, вероятно, является лучшим вариантом, чем использование Javascript для взлома вашей веб-страницы. На моем сайте эта проблема, кажется, имеет поток аффекта, препятствующего загрузке необходимого шрифта FontAwesome. Мы будем использовать это решение пока, пока не сможем изменить способ размещения видео на нашем сайте.
Крис Нолдус
если вы измените embed на v, то мой iframe не будет работать. Любой совет? я использовал это решение из этого поста stackoverflow.com/a/8521287/4812515
alphapilgrim
1
Имейте в виду ... / v / ... удален developers.google.com/youtube/…
Младен Янетович
Плохая идея. Если вы используете v вместо embed, youtube будет использовать flash player вместо встроенного html player.
КиберАлекс
2

Ошибка заключается в попытке исправить ошибку Youtube.

Решение, позволяющее избежать вашего комплекса Javascript-Console-Error, заключается в том, чтобы признать, что Youtube (и другие веб-страницы) могут иметь ошибки Javascript, которые вы не можете исправить.

Вот и все.

user5775253
источник
0

Простым исправлением для этого является установка расширения Google Cast . Если у вас нет Chromecast или вы не хотите использовать расширение, нет проблем; просто не используйте расширение.

Марк Кимич
источник
0

В дополнение к тому, что уже было сказано - чтобы эта ошибка не помешала (не остановила) другой код Javascript на вашей странице, вы можете попробовать принудительно загрузить iframe YouTube в последнюю очередь - после загрузки всего другого кода Javascript.

bdereta
источник