我有一个脚本,它使用内容服务从谷歌应用程序 scriptDB 获取一些 JSON 数据。我正在使用 jQuery JSONP(因为它显然是来自 GAS 的跨域)。在 Chrome 和 safari 上一切正常,但在 IE 上,我当然遇到了问题。
我遇到了这篇IE/MSDN 文章,它描述了现在需要将跨域 JSONP 作为特定的 mime 类型才能与 IE 一起使用 - 但我不相信在 Google Apps Script Content 服务中我可以将 mime 类型更改为可接受的值之一。
因此,相反,我一直在查看 xDomainRequest - 但是这段代码带有 SCRIPT5:在 xdr.open() 行上的 IE9 和 IE10 上访问被拒绝。
if (window.XDomainRequest) {
// its IE
var xdr = new XDomainRequest();
xdr.open("get", url);
xdr.onload = function() {
deferred.resolve(JSON.parse(xdr.responseText));
}
xdr.onerror(function() {
deferred.reject("error with IE xdomain request for " + url);
});
xdr.send();
}
else {
$.getJSON(url, null,
function (data) {
deferred.resolve(data);
})
.error(function(res, status, err) {
deferred.reject("error " + err + " for " + url);
});
}
return deferred.promise();
整个脚本是http://xliberation.com/s/badgemanager.html
我看过很多与此相关的主题的帖子,但我无法做出任何工作。有没有人明确地想出用于 IE/GAS 组合的 JSONP?