Uncaught ReferenceError: ytcfg не определен (также __ytRIL не определен)
Я использую API IFrame Player YouTube без проблем в течение нескольких месяцев и начал видеть это исключение недавно, когда игрок загружается:
Uncaught ReferenceError: ytcfg is not defined
Проверяя iframe, я вижу успешный вызов yt.setConfig
, но ytcfg.set
выходит позже. Был ли API недавно изменен? Любой параметр игрока может вызвать эту проблему?
<script src="//s.ytimg.com/yts/jsbin/www-embed-player-vflnzmqns/www-embed-player.js" type="text/javascript" name="www-embed-player/www-embed-player"></script>
<script src="//s.ytimg.com/yts/jsbin/player-en_US-vflr--npw/base.js" name="player/base"></script>
<script>
yt.setConfig({
...
});
writeEmbed();
</script>
<script>
ytcsi.info('st', 35);
ytcfg.set({
"TIMING_ACTION": "",
"CSI_VIEWPORT": true,
"TIMING_INFO": {
"c": "WEB",
"yt_li": 1,
"cver": "1.20161112",
"yt_lt": "cold"
},
"CSI_SERVICE_NAME": "youtube"
});
;</script>
Есть несколько вариантов этой проблемы:
https://issuetracker.google.com/issues/35178202 "ytcfg не определен"
https://issuetracker.google.com/issues/35177930 "__ytRIL не определен"
Ответы
Ответ 1
Это ошибка Google. Это также происходит на странице разработчика Youtube. https://developers.google.com/youtube/youtube_subscribe_button
Следующие ошибки отслеживают эту проблему.
https://code.google.com/p/gdata-issues/issues/detail?id=8569 (все еще активен - с 5 января 2017 года)
Пожалуйста, проголосуйте за эту ошибку, используя ссылки ниже, чтобы привлечь внимание. Они сидят на ней с 9 сентября 2016 года!!.
Ответ 2
Похоже, что ошибка на стороне youtube. Вы можете увидеть ту же ошибку JS здесь: https://www.youtube.com/embed/U-xetxYwyak
Ответ 3
Это началось даже на youtube.com, когда вы нажимаете кнопку "Поделиться" под любым видео, а затем на вкладке "Вставить", чтобы скопировать вставку html-кода встраивания. Определенно их вина.
Ответ 4
У меня была такая же проблема. Временное исправление использовало объекты вместо iframes. Это сработало для меня.