1

「Service1.svc」という名前のWCFAjax対応Webサービスを作成しました。「Jqueryを使用して別のアプリでこのサービスを呼び出す必要があります。」私はその中のメソッドで作成しました:

    [OperationContract]             
    public string GetMarkup()
    {   
       string data = "<div>My HTML markup text here</div>";
       return data;
    }

これで、2番目のアプリケーションのhtmlページにjqueryスクリプトを作成しました。

var markup = "";
$.ajax({
    type: "POST",
    url: "http://localhost:1676/MyWCFService.svc/GetMarkup",
    contentType: "application/json",
    data: "{}",
    dataType: "json",
    success: callback,        
    error: function (textStatus) {
        alert("ERROR");
    }
});
function callback(result) {
    alert("Inside Callback");
    markup = result.d;
    $("#divMyMarkup").html(markup);
    alert(markup);
}

今、私の問題は、IEでこのページを実行するときはいつでも正常に動作することです。しかし、Firefoxでは機能しません。error: function (textStatus) {alert("ERROR");}上記のajax呼び出しで定義されたアラートエラーメッセージを 表示します。

$ .get()、$( "#divMyMarkup")。load(serviceUrl、callback)を使用してこの機能を試しました。また、データ型をjson、jsonp、htmlに変更してこれを試しました。それでも私は正確な解決策を得ていません。

ここに専門家はいますか?

4

1 に答える 1

3

別のアプリで Jquery を使用している

私の経験では、IEはクロスドメインポリシーを尊重せず、参照ではなく呼び出しを許可します...

見つける唯一の方法は、html ページ/JQuery スクリプトhttp://localhost:1676/ICallWcfServicesWithJQuery.htmlで Firefox から WCF サービスを呼び出すことです。

可能な解決策:

複数のブラウザーでテストし、1 オンスのジン、トニック 1 缶を追加すると、うまくいきます!

于 2011-08-05T14:44:41.047 に答える