我理解其中一些原始策略的目的是出于某种原因,例如阻止XSS,但我希望能更好地处理错误。
我们在访问者网站中注入了iframe,为了创建案例,我们将代码更改为n
XMLHTTPRequest到我们的端点URL。
我们的一些客户已经拥有非常具体的CSP(他们也配置了允许我们现有的,很快就会过时的代码)来处理我们正在实施的产品。
所以,现在,当我们发布POST时,一些网站会失败,我想更好地处理这个失败。例如,如果我们的客户端有$.each
,POST将失败,我想回退到Legacy逻辑。
似乎没有特定的失败代码,因为在$.ajax({
url: 'loadlatestreviews.html'
method: 'POST',
dataType: 'json',
success: function(data) {
console.log(data);
var fields = JSON.parse(data);
var subject = fields["subject"];
}
});
它会立即创建控制台错误POST
然后,connect-src 'none'
事件触发,最后xhr.send()
事件触发。因此,如果我正确地看到了事情,则没有特定的get(Content-Security-Policy)方法。标题是空的,所以我的唯一选项是
Refused to connect to 'http://blah.com/' because it violates the following Content Security Policy directive: "connect-src 'none'".
另外,因为我可以在onreadystatechange事件上跟踪它,所以我不需要运行onError事件。但是没有办法取消这个XHR?
我们不能将fetch()用于promises,因为IE尚不支持它。我们只使用纯JS(没有xhr.onreadystatechange
)。
感谢您澄清