IP別に1時間のリクエスト数が150を超えると400 Bad Requestとなってしまうため、
callback関数が呼ばれずに処理が途中で終了してしまうという現象に遭遇した。
てっきりJSONPの場合もerrorとかの関数も呼ばれていると思っていたのですが、そうではない様子。
試しにerrorとか書いてみても全く反応なし・・・。
調べてみたらどうやらJSONPの場合はsuccessとcomplete以外はコールされないらしい。
とりあえずググってみたら、案の定出てきました。
「jquery.jsonp.js」
これを使えば普通にエラーハンドリングができそうです。
$.jsonp({
url: "http://hoge.jp/",
callback: "callback_function_name",
success: function(json) {
// This will be called in case of success no matter the callback name
},
error: function() {
// This will be called in case of error no matter the callback name
}
});