Я пытаюсь получить доступ к сценарию из API плеера iframe YouTube, чтобы воспроизвести/приостановить видео для расширения chrome. Мой JS находится ниже (от https://developers.google.com/youtube/iframe_api_reference).
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('video', {
events: {
'onReady': onPlayerReady
}
});
}
function onPlayerReady(event) {
player.playVideo();
}
Однако, когда я загружаю расширение в Chrome, я получаю следующую ошибку:
Отказался загружать скрипт 'https://www.youtube.com/iframe_api" потому что это нарушает следующую директиву политики безопасности содержимого: "script-src 'self'". Обратите внимание, что "script-src-элемент" не был задан явно, поэтому "script-src" используется в качестве запасного варианта.
Я попытался добавить URL-адрес в CSP в Manifest.json (ниже). Я также удалил все встроенные JS.
"content_security_policy": "script-src 'self' https://www.youtube.com/iframe_api; object-src 'self'"
Теперь расширение не загружается с ошибкой, указывающей, что мое значение CSP недопустимо. Есть идеи, что я делаю не так?