使用 jquery-1.9.1 ,我启用了 CORS 支持。
$.support.cors = true;
然后我发出如下所示的 ajax 请求,我还从服务器端启用了 jsonp 回调支持。
$.ajax({
type: 'GET',
url: url,
async: false,
contentType: "application/json",
jsonpCallback: 'jsonCallback',
dataType: 'json',
success: function(data) {
var featureJSON = data.feature;
},
error: function(e) {
},
complete: function () {
}
});
我已经在 jboss 中部署了它并从另一台计算机(不同的域/IP 地址)访问了该页面。此 ajax 调用适用于另一台计算机和同一台计算机的 FF 和 Chrome。
它也适用于 IE,但在同一台计算机上。
当从我部署的计算机以外的其他计算机访问时,将无法在 IE 中工作。
谷歌搜索后,我了解到 IE* 不允许由 jquery 进行的跨域 ajax 调用。而且 jquery 不支持 IE 的 XDomain 对象。
总而言之,如何让 jquery 使用 IE 的 XDomain 对象?,我几乎完成了应用程序(我的错,我没有检查 XDomain 的事情)。我无法再次重建代码。还有其他解决方案吗?