API YouTube IFrame создает предупреждение о смешанном содержимом с помощью HTTPS + HTML5
Когда я встраиваю youtube на HTTPS-странице с помощью iframe api в режиме HTML5, он по-прежнему вытягивает фактический поток, используя HTTP, который генерирует предупреждение о смешанном содержании. Правильно ли поддерживается эта функция?
Я нашел эту дискуссию от 2011 года, которая предполагает, что это не так. Однако я просто попытался получить доступ к серверу CDN с помощью HTTPS, и он работает - вроде - но он возвращает неверный сертификат (google.com вместо чего-то для youtube.com).
Кто-нибудь смог встроить видео на HTTPS-страницу с использованием API IFRAME в HTML5 без запуска предупреждения о смешанном содержании (т.е. блокировки с желтым предупреждающим знаком в Chrome)?
Спасибо
Ответы
Ответ 1
Похоже, что (по состоянию на октябрь 2012 года) это ожидаемое поведение, и нет никаких планов по его изменению: https://code.google.com/p/gdata-issues/issues/detail?id=2964&can=1&q=youtube%20https&colspec=API%20ID%20Type%20Status%20Priority%20Stars%20Summary
Ответ 2
Вы можете исправить это, настроив ваш API iframe script, чтобы выглядеть так.
Используйте '//' для тега src
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var url = window.location.pathname;
Это заставит игрока загружать ресурсы, используя тот же протокол, что и страница, на которой он встроен.