0

我在java中有一个servlet。

我的 servlet URL 是http://192.168.10.113:8080/collective-intellegence/UserClickPersonClassifier?userid=1&query=asp.net

此 URL 提供 json 数据。

我正在使用 jquery ajax 调用来获取数据。

我的代码

function SecondResultLink(link, userId, userInput) {
try{
    var urlSearch = "http://192.168.10.113:8080/collective-intellegence/UserClickLinkClassifier?userid=" + userId + "&query=" + userInput;
    $.ajax({
        url: urlSearch,
        type: 'POST',
        dataType: 'json',
        async: false,
        success: function (data) {
            if (data.length != 0) {
                for (index = 0; index < data.length; index++) {
                    if (!link.exist(data[index].Link.name.toLowerCase(), data[index].Score)) {
                        link.add(data[index].Link.name.toLowerCase(), data[index].Score);
                    }
                }
            }
        },
        error: function (error) {
            alert(error.error);
        }
    });
}
catch (err) {
    alert(err);
}
}

上面的代码在 Chrome、Firefox 和 Safari 中给出了 45 条记录,但在 Opera 中给出了 25 条记录并在 IE 中给出了错误消息。

IE 中的错误消息:- function(){if(c){var a=c.length;m(arguments),i? k=c.length:e&&e!==!0&&(j=a,n(e[0],e[1]))} 返回这个}

在除 IE 之外的所有浏览器中,请求都会发送到服务器,但在 IE 中,请求不会发送到服务器。

这不是跨域问题,因为我允许所有人访问服务器(在 Access-Control-Allow-Origin: * 的标题中看到)

IE有什么问题?如何解决此问题或任何其他获取数据的方法。

请帮忙

提前致谢

4

1 回答 1

0

IE8 和 IE9 不完全支持 cors.. 所以你必须为 ie 8 和 9 编写一些代码

通过此链接这将对您有所帮助(单击此处)[http://msdn.microsoft.com/en-us/library/dd573303%28v=vs.85%29.aspx]

于 2012-11-21T10:05:35.997 回答