2011-08-05 8 views
0

JSONP AJAXリクエストを取得しようとしていますが、なぜ動作していないのかがわかりません。今すぐ私はこの電話を持っていますJSONP AJAXイベントをデバッグする方法

$.getJSON(server_path+"formproxy.php?"+$(form).serialize()+"&action="+form.action+"&callback=?", function(data, status, xhr) { 
    alert(data); 
}); 

しかし、私はスクリプトを実行すると何も起こらないようです。私が知ることができる最高のものは、jsonpリクエストがエラーに陥っているということですが、jsonpリクエストであるため、実際にエラーを報告していないため、デバッグが大きく妨げられています。

私は

$.ajaxSetup({ 
    "error":function() { 
     alert("error"); 
    } 
}); 

$(document).ajaxError(function(e, xhr, settings, exception) { 
    alert('failed'); 
}); 

と周りプレイしましたが、私はそれらのいずれかをトリガすることができません。

私は出力されたURLを訪問し、私に権利思われる作業と出力?({"result":"success"})されていることがわかりますコンソールに出力対象のURLを、すなわち

server_path+"formproxy.php?"+$(form).serialize()+"&action="+form.action+"&callback=?" 

をしました。

Chromeのコンソールを見ると、XHRも表示されませんが、ブレークポイントのおかげで$ .getJSON()コードに到達していることは間違いありません。

最後に、私はAJAX呼び出しからデータを取り戻すことにも関心がないことに気づくべきです。私はちょうどフォームデータのクロスドメインを送信し、それを処理するformproxy.phpスクリプトをする必要があります。

これがなぜ機能しないのか、何が起こっているのかを知る手助けをするテクニックについてのご意見は、大変ありがたく思います。

答えて

2

ChromeデベロッパーツールでNetwork Panelを見てみましたか?それはあなたのページで行われているすべてのHTTPリクエスト/応答を表示します。そうすれば、getJSON呼び出しがサーバーに要求を出しているかどうか、およびサーバーの応答があればそれが何であるかを確かめることができます。

FirebugでNet panelを使用することもできます。

+0

素晴らしいアイデア。私はAJAXコードを実行すると、私は次の取得: 'GET (キャンセル) 未定義の書式設定のための OK text/htmlの 28.99キロバイト 0B Pending'(ごめんGET 0B 0B 93ms 0.0日)。これらの両方には、リクエストが行われたページの名前(リクエストしているURLではない)があり、同時に発生しているようです。何かが起こっていますが、私には何が正確かは不明です。 –

+0

URLの名前が正しく表示されるようにしていますか?左側の「名前」列をクリックすると、ヘッダーの下にリクエストヘッダー、クエリ文字列パラメーター、および応答ヘッダーが表示されます。 「応答」では、サーバーからの応答があったかどうかを確認できます。それは手がかりを与えますか? – Annie

関連する問題