由于MIME类型错误,Chrome拒绝执行AJAX脚本
我正在尝试通过AJAX访问JSON脚本,该脚本在Safari和其他浏览器上都可以正常运行,但不幸的是无法在Chrome中执行。它带有以下错误:
拒绝从“ *”执行脚本,因为其MIME类型(“ application / json”)不可执行,并且启用了严格的MIME类型检查。
这是请求:
$.ajax({ url: "http://some_url/test.json?callback=?",
type: "GET",
dataType: 'json',
cache: true,
success: function (data, status, error) {
console.log('success', data);
},
error: function (data, status, error) {
console.log('error', data, status, error);
}
});
有人对此有解决方法吗?
回答:
通过添加一个回调参数,您告诉jQuery您想使用脚本元素而不是XMLHttpRequest来请求JSONP。
JSONP不是JSON。这是一个JavaScript程序。
更改服务器,使其为JSONP输出正确的MIME类型,即application/javascript
。
(尽管如此,请不要告诉jQuery您期望使用JSON,因为这是矛盾的:)dataType: 'jsonp'
。
以上是 由于MIME类型错误,Chrome拒绝执行AJAX脚本 的全部内容, 来源链接: utcz.com/qa/412420.html