0

私はJavaでサーブレットを持っています。

私のサーブレット 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 に答える