0

次のjQueryAJAXJSONPリクエストを作成しようとしています。

$.ajax({
    type: "GET",
    url: apiUrl + currentType + "/" + $(this).val() + "/" + nextType + ".json?jsoncallback=?",
    dataType: "jsonp",
    success: function (data) {
        console.log(jQuery.parseJSON(data))
    },
    error: function (reqObj, textStatus, error) {
        console.log(textStatus, error)
    }
});

成功関数は実行されず、これはerror関数からのログデータです。

parsererror, message: "jQuery17205679343591909856_1334681898332 was not called"

なぜこれが機能しないのかわかりません...

4

1 に答える 1

0

そのため、(API 側で) いくつかの構成を変更した後、問題を解決することができました。

まず、API 側で JSON 応答をすばやく生成するために、Rails 用の RABL gem を使用していました。アプリの初期化子に構成例を含めました (https://github.com/nesquena/rabl)。Github から:

出力内の各子のルート ノードを削除する include_json_root が無効になっている場合、enable_json_callbacks は、着信要求に「callback」パラメーターがある場合に「jsonp」スタイルのコールバック出力のサポートを有効にします。

次に、これが私のjQueryです(クライアントの消費者側):

$.ajax({
            url: apiUrl + currentType + "/" + $(this).val() + "/" + nextType + ".json",
            dataType: 'jsonp',
            type: "GET",
            success: function(data) {
                console.log(data);
                console.log('Success!');
            }
        });
于 2012-04-17T18:15:24.107 に答える