サーバー上のいくつかのイベント ソースを照会する jquery カレンダー ウィジェットがあり、これらのソースはすべて同じ JSON 形式の応答を返します。
本当に厄介なのは、ユーザー Cookie の有効期限が切れると、これらのソースがすべてユーザーをログイン ページにリダイレクトし、HTML コンテンツを返すことです。
フィドラーでリクエストを確認したところ、2 つのリクエストが行われていることがわかります。1 つ目は、http ステータス 302 でイベントを更新する jquery カレンダー オブジェクトからのリクエストで、http ステータス 200 でログイン ページへのリクエストの直後です。
GET /xyz/Adempimenti/GetEvents?_=1289170335910&start=1288566000&end=1291590000 HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Accept: application/json, text/javascript, */*; q=0.01
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Location: /xyz/Login/LogOn?ReturnUrl=%2fxyz%2fAdempimenti%2fGetEvents%3f_%3d1289170335910%26start%3d1288566000%26end%3d1291590000&_=1289170335910&start=1288566000&end=1291590000
私のサイトは ajax 呼び出しに深く基づいており、カレンダーのこの 1 つは、私が直面している問題を説明するための単なる例です。すべての ajax 呼び出しでエラーを処理してリダイレクトすることを避けたいと思います。最適な方法は、セッション Cookie の有効期限が切れたときにユーザーを自動的に切断する方法を見つけることです。セッションの有効期限が切れたことを示すダイアログを自動的に作成する Web メール システムで、これが実装されているのを見たことがあります。
この方向について何か助けはありますか?