google chrome - spec - Content-Security-Policy objeto-src blob
html5 whatwg (3)
Cuando uso una política de seguridad de contenido e intento seguir un proceso en Chrome 41 (beta) usando window.URL.createObjectURL Recibo un error como el siguiente:
Se negó a cargar los datos del complemento desde ''blob: http% 3A // localhost% 3A7000 / f59612b8-c760-43a4-98cd-fe2a44648393'' porque viola la siguiente directiva de Política de seguridad de contenido: "object-src blob: // *
Con una política de seguridad de contenido que restringe object-src
o default-src
se puede reproducir el problema (con jQuery por conveniencia) de la siguiente manera:
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)
De la especificación parece que esto debería funcionar , como lo hace para los data://*
. También he intentado blob
, blob:
blob:*
, blob:http*
, blob:http:*
, blob:http://*
, pero no ha servido de nada.
Lo que sí funciona, pero por razones aparentes es indeseable, es object-src *
.
¿Alguien ha tenido éxito en hacer que los blobs se carguen con una política de seguridad de contenido? ¿Se trata de un problema corriente arriba, o he pasado por alto algo?
Para Chrome 47.0.2526.73:
default-src * blob :;
trabajó para mi
Una solución parece ser usar object-src ''self''
.