Jak mohu povolit rozšíření pro chrome pro přístup třetích stran API script?

0

Otázka

Snažím se přístup skriptu z YouTube iframe player API v pořadí, přehrát/pozastavit video, pro rozšíření chrome. Můj JS je níže (od 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();
}

Nicméně, když jsem načíst rozšíření pro Chrome, jsem se následující chybová zpráva:

Odmítl načíst skript 'https://www.youtube.com/iframe_api protože to porušuje následující Obsah Bezpečnostní Politiky, směrnice: "script-src 'self'". Upozorňujeme, že script-src-elem' nebyl explicitně nastavit, takže 'script-src' je použito jako záchrana.

Snažil jsem se přidat URL do CSP v Manifestu.json (viz níže). Jsem také odstraněny všechny inline JS.

"content_security_policy": "script-src 'self' https://www.youtube.com/iframe_api; object-src 'self'"

Nyní, rozšíření selže načíst s chybou, že můj CSP hodnota je neplatná. Nějaký nápad, co dělám špatně?

1

Nejlepší odpověď

0

Můžete zkontrolovat chrome.skriptování.executeScript(), to vám umožní načíst knihovnu a pak spustit nějaký kód, který ji používá. K tomu musíte mít ve stejné složce jako zbytek souboru (stačí zkopírovat knihovnu do js souboru). Kód, který používá knihovna musí být provedeny po počáteční příslib chrome.skriptování.executeScript je vyřešen.

https://developer.chrome.com/docs/extensions/reference/scripting/#usage

2021-11-25 08:52:09

Zkopíroval jsem API do mého kódu a používá chrome.skriptování.executeScript(), a fungovalo to! Děkuji moc!
weissguy

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................