【问题标题】:How to allow this code within a Chrome Packaged App without violating CSP?如何在不违反 CSP 的情况下在 Chrome 打包应用程序中允许此代码?
【发布时间】:2014-06-19 14:07:51
【问题描述】:

控制台中的第一个被标记为“不安全评估”。如何更改它以便对其进行评估?

index.js:

function testForFunction(str) {
return function () { result(typeof eval(str) == "function"); }

此错误未在控制台中指定。控制台仅表示违反了内容安全策略。

index.js:

function loadTestFrame(cb, src) {
if (!testFrame) { testFrame = createTestFrame(); }
frameLoadCallback = cb;

src = src || 4;

if (typeof src == "number") {
  var pgs = [];
  for (var i = 1, ii = src; i <= ii; ++i) {
    pgs.push("<div>Page "+i+"</div>");
  }
  var divStyle = [
    "display:inline-block",
    "line-height:"+testFrameSize+"px",
    "width:"+testFrameSize+"px"
  ].join(";");
  src = "javascript:'<!DOCTYPE html><html>"+
    '<head><meta name="time" content="'+(new Date()).getTime()+'" />'+
    '<style>div{'+divStyle+'}</style></head>'+
    '<body>'+pgs.join("")+'</body>'+
    "</html>'";
}

testFrame.src = src;
}

我知道有一些方法可以放宽默认策略,但如果可能的话,我宁愿不要使用它们..

【问题讨论】:

    标签: google-chrome google-chrome-app content-security-policy


    【解决方案1】:

    如果您需要不同的 CSP,则需要使用沙盒页面 (https://developer.chrome.com/apps/manifest/sandbox)。

    【讨论】:

    • 你是对的..在另一个例子中会起作用,在我的情况下它因为工作脚本错误而不起作用..还是谢谢你!!
    猜你喜欢
    • 2016-05-13
    • 2014-02-11
    • 1970-01-01
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 2020-05-19
    • 2015-09-25
    • 2020-01-12
    相关资源
    最近更新 更多