我有一个脚本,它使用内容服务从谷歌应用程序scriptDB中获取一些JSON数据。我使用的是jQueryJSONP(因为它显然是来自GAS的跨域)。在Chrome上一切都很好;safari,但在IE上,我当然遇到了问题。
我看到了这篇IE/MSDN文章,其中描述了跨域JSONP现在需要作为一种特定的mime类型来使用IE,但我不相信在谷歌应用程序脚本内容服务中,我可以将mime类型更改为可接受的值之一。
因此,我一直在研究xDomainRequest,但这段代码出现了SCRIPT5:在IE9&xdr.open()行上的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();
正在提取的URL是https://script.google.com/macros/s/AKfycbzc0yBs8FfUZyJP1IhGpeTx-MsC288Ml6VYHjnqN9B9Kl3phHuh/exec?panelset=xliberation_panel&callback=?
整个脚本http://xliberation.com/s/badgemanager.html
我看过很多关于这个话题的帖子,但我什么都没做。有没有人确切地找到了IE/GAS组合的JSONP?
在问题跟踪器上提交功能请求;我们没有理由不能添加您需要的类型。(作为回答,我认为以前没有人在跟踪器上提出过这个问题,我们也没有意识到。)