2

特定のリモート Web サービスへのアクセスを必要とするモバイル アプリケーションを開発しています。私は jQuery.ajax() を使用していますが、オリジン ポリシーが同じであるため、JSONP を使用してリクエストを行う必要があります。私のクライアントの要求はそうです:

$.ajax({
    type: "GET",
    url: "http://www.foo.jws/bar",
    contentType: "application/json; charset=utf-8",
    data: {},
    dataType: 'jsonp', 

    success: function(msg) {
       console.log(msg);
    },
    error: function() {
      console.log('error');
    }

});

受信し続けるエラーは「Uncaught SyntaxError: Unexpected identifier」です

私は何を間違っていますか?

編集: WS のデータは XML です

4

2 に答える 2

2

ここに機能がありません。

error: function() {
    console.log('error');
}

また、末尾のコンマを取り出します。

于 2012-08-03T20:51:28.527 に答える
0

エラー コールバック コードが正しくありません。ここにコードを入力しただけなのか、それともコピーして貼り付けただけなのかはわかりません。次のようにする必要があります。

error: function (jqXHR, textStatus, errorThrown) {
    console.log('error');
}

その後、エラー コールバックに渡される引数から、呼び出しで何が起こっているかについての詳細情報を取得できます。

編集: サーバーから XML を取得しているので、dataType を jsonp から xml に変更する必要があります。dataType オプションは、返されるデータの型を jQuery に指示します。

$.ajax({
    type: "GET",
    url: "http://www.foo.jws/bar",
    contentType: "application/json; charset=utf-8",
    data: {},
    dataType: 'xml', 
    success: function(msg) {
       console.log(msg);
    },
    error: function() {
      console.log('error');
    }
});
于 2012-08-03T20:54:55.410 に答える