1

jquery mobile と phonegap を使用してネイティブ Web アプリを構築しています。データは外部サーバーからロードされます。今、ssl を使用してデータをロードする必要がありますが、エラーが発生しています:

NETWORK_ERR: XMLHttpRequest 例外 101

Chrome REST クライアントを試してみましたが、すべて正常に動作します。

コード:

WebService.prototype.execute = function (url, params) {
    var result = {
        HttpResponseObject : {},

        onSuccess : function (data) {       
            result.HttpResponseObject.response = JSON.parse(data);
        },

        onError : function (XMLHttpRequest, textStatus, errorThrown) {          
            $.mobile.hidePageLoadingMsg();          

            // TODO some logging for errors
            console.log(JSON.stringify(XMLHttpRequest));
            console.log(JSON.stringify(textStatus));
            console.log(JSON.stringify(errorThrown));       
        }
    };

    $.ajax({
        url:            url,
        type:           'POST',
        async:          false,
        data:           JSON.stringify(params),
        dataType:       'text',
        contentType:    'application/json',
        error:          result.onError,
        success:        result.onSuccess
    });

    return result;
};
4

2 に答える 2

1

これは、ajaxを使用して外部APIを照会するために私が行うことです...

 $.ajax({
        type: "GET",
        url: "http://api.rottentomatoes.com/api/public/v1.0/movies.json?apikey=[myAPIKey]&q=" + movie.title + "&page_limit=1",
        contentType: "application/json; charset=utf-8",
        crossDomain: true,
        dataType: 'jsonp',
        success: function (msg) {
            ...awesome code here
        }});

ここで重要なのは「crossDomain:true」行です(一部のサービスでもdataType:'jsonp'である可能性があります)。

于 2013-01-10T14:43:27.277 に答える
0

これは役に立ちます-ajax呼び出しは外部URLでは機能しませんが、それを回避する方法があります:

jqueryで外部URLを呼び出す方法は?

于 2012-09-05T08:31:26.343 に答える