Lorsque j'utilise une politique de sécurité du contenu et j'essaie de suivre un processus en Chrome 41 (beta) en utilisant window.URL.createObjectURL j'obtiens une erreur comme la suivante :
Refus de charger les données du plug-in à partir de 'blob: http% 3A // localhost% 3A7000/f59612b8-c760-43a4-98cd-fe2a44648393' car il enfreint la directive de stratégie de sécurité du contenu suivante: "objet-src blob: // *"
Avec une politique de sécurité du contenu qui limite object-src
ou autrement default-src
on peut reproduire le problème (avec jQuery pour plus de commodité) comme ceci:
blob = new Blob(
["%PDF-1.\ntrailer<</Root<</Pages<</Kids[<</MediaBox[0 0 3 3]>>]>>>>>>"],
{ type: "application/pdf" })
$("<embed>").attr("src", window.URL.createObjectURL(blob))
.appendTo(document.body)
Il semble de la spécification que cela devrait fonctionner , comme pour data://*
. J'ai aussi essayé blob
, blob:
, blob:*
, blob:http*
, blob:http:*
, blob:http://*
, mais en vain.
Ce qui fonctionne, mais pour des raisons apparentes n'est pas souhaitable, c'est object-src *
.
Quelqu'un a-t-il réussi à charger des blobs avec une stratégie de sécurité de contenu? Est-ce un problème en amont ou ai-je oublié quelque chose?
Pour Chrome 47.0.2526.73:
défaut-src * blob :;
travaillé pour moi