内容安全策略对象源 blob
Content-Security-Policy object-src blob
使用内容安全策略时,我尝试使用 window.URL.createObjectURL 遵循 Chrome 41(测试版)中的流程,但出现如下错误:
Refused to load plugin data from 'blob:http%3A//localhost%3A7000/f59612b8-c760-43a4-98cd-fe2a44648393' because it violates the following Content Security Policy directive: "object-src blob://*"
使用限制 object-src
或 default-src
的内容安全策略,可以像这样重现问题(为方便起见使用 jQuery):
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)
从 the spec that this should work 看来,data://*
也是如此。我也试过 blob
、blob:
、blob:*
、blob:http*
、blob:http:*
、blob:http://*
,但没有用。
有效但由于明显原因不受欢迎的是 object-src *
。
有没有人成功地让 blob 加载了内容安全策略?这是上游的问题,还是我忽略了什么?
使用内容安全策略时,我尝试使用 window.URL.createObjectURL 遵循 Chrome 41(测试版)中的流程,但出现如下错误:
Refused to load plugin data from 'blob:http%3A//localhost%3A7000/f59612b8-c760-43a4-98cd-fe2a44648393' because it violates the following Content Security Policy directive: "object-src blob://*"
使用限制 object-src
或 default-src
的内容安全策略,可以像这样重现问题(为方便起见使用 jQuery):
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)
从 the spec that this should work 看来,data://*
也是如此。我也试过 blob
、blob:
、blob:*
、blob:http*
、blob:http:*
、blob:http://*
,但没有用。
有效但由于明显原因不受欢迎的是 object-src *
。
有没有人成功地让 blob 加载了内容安全策略?这是上游的问题,还是我忽略了什么?