AJAXを介してデータを要求および送信するWebアプリがあり、状況に応じて、サーバー側がHTTPステータスコードを送信します。したがって、たとえば、ユーザーがログイン中にログインしようとすると、おそらく。を返します400 HTTP status code
。そして最終的にはアラートなどで処理します。
しかし、私はAJAXを多用しているため、これらのHTTPステータスコードの処理は非常に重くなります。つまり、すべてのAJAXリクエストでHTTPステータスコードを繰り返し処理することになり、コードが重複することになります。これは悪い習慣です。
したがって、私が探しているのは、これらすべてのエラーを1つの場所で処理する方法です。したがって、すべて400
の401
、などを同じコードで処理するだけです。
私が現在していること:
AJAX呼び出しごとに手動でエラーを処理します。を使用しstatusCode
て$.ajax()
。
statusCode: {
500: function(data) {
alert('Some friendly error message goes here.');
}
私のWebアプリが開発され、より多くのajax呼び出しを作成するにつれて、それは私にとってやり過ぎのように思えます。このコードを何度も繰り返します。
現在、私が考えている唯一のアイデアは、AJAX上で機能する関数を作成することです。
function doAjax(type,url, data, moreVars) {
//this function is just a SIMPLE example, could be more complex and flexible.
$.ajax({
type: type,
url: url,
data: data,
moreOptions:moreVars,
//now handling all status code.
statusCode: {
//handle all HTTP errors from one place.
}
});
}
doAjax("POST", 'mydomain.com/login.php', dataObj);