拒绝从"url"执行脚本,因为它的MIME类型("应用程序/json")不可执行



我们正试图在jquery代码中使用Yammer rest服务的"current.json">

$.ajax({
url: "https://www.yammer.com/api/v1/networks/current.json",
jsonp: "callback",
type: "GET",
dataType: "jsonp",
data: "javascript",
contentType: 'application/json; charset=utf-8',
success: function (response) {
alert(1);
myObj = response;
readJson(response); // server response
},
error: function (xhr, errorText, status) {
alert(-1);
}

然而,每当它转到错误函数时,当我们看到状态代码时,它显示200。此外,我们还可以在浏览器控制台中看到响应(JSON格式)。

我们面临的确切错误是:

拒绝从执行脚本'https://www.yammer.com/api/v1/networks/current.json?callback=jQuery110203706010680180043_1429617947980&amp_=1429617947981'因为其MIME类型("application/json")不可执行,并且启用了严格的MIME类型检查。

有人对此有任何解决方案吗?

谢谢。

问题是因为您将dataType设置为JSONP,但响应以标准JSON格式返回。

Yammer API似乎不支持CORS或JSONP。您需要使用他们提供的JS SDK通过JavaScript而不是jQuery向其发出请求。

最新更新