Ошибка 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>

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


1
Я тоже бью это. Это заставляет ваш JS не запускаться на странице?
— Давко

1
Нечасто да. Мне удалось повторить его несколько раз, когда он сломал бы JS на странице, но в большинстве случаев я просто вижу ошибки консоли.
— Алекс

Встроенное видео все еще загружается для вас? Это не для меня, что плохо.
— kleinfreund

1
Удивительно, но поддержка Google AdWords блокирует сайты, которые имеют эту проблему. очень расстраивает
— Мартин Олдерсон

1
Попробуйте отключить расширение Adblocker для сайта. Работал на меня.
— Робот Бой

Ответы:


140

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

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

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

Читать далее

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

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


Я получаю это на встроенном устройстве, которое не дает возможность добавлять расширения и вообще не позволяет воспроизводить видео. Очистка кеша исправляет это, но это не вариант. Я вижу ответ, который кто-то опубликовал, об изменении «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"}

5
Что вы предлагаете тогда? Я не хочу устанавливать расширение Google Cast! Что-то вроде переопределения этой функции?
— Августин Ридингер


4
Прежде всего: переопределение этой функции не должно работать, и вам не следует переопределять функции сайтов других людей. Если вам это удастся, вам удастся взломать Google Chrome, YouTube или оба. Кроме того, это их ошибка, а не ваша. Просто отправьте отчет об ошибке или что-то в этом роде. Во-вторых, @sompylasar упоминает, что код находится в источнике файла с именем www-embed-player.js. Можете ли вы объяснить нам, почему вы смотрите на другой файл, но ожидаете, что эта функция все же будет там?
— toon81

21

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


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, которые вы не можете исправить.

Вот и все.


0

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


0

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.