0

私たちのプロジェクトでは、さまざまな操作のために多くのjsonコールバックを作成します。そのようなajax呼び出しの例を以下に示します

$.ajax({
    url: '../Controller1/Method1',
    type: "POST",
    data: "{'Id': '" + Id "'}",
    dataType: "html",
    contentType: "application/json; charset=utf-8",
    success: function (result) {
        $('#div').html(result);
    }, error: function (s) {
        ShowAlert(s.responseText);
    }
});

これで、セッションがタイムアウトになり、json ajaxコールバックを作成している場合、ログインページに適切にリダイレクトされないため、json ajaxコールバック中のセッションタイムアウトを処理する方法、およびセッションが期限切れになってajaxコールバックが作成された場合ログインページにリダイレクトされます。

これを達成する方法は?任意のヘルプ(コードサンプル、便利なリンク)をいただければ幸いです。

4

2 に答える 2

2

ajax呼び出しが行われ、セッションがタイムアウトすると、特定のエラーメッセージが返されます。応答に特定のエラーメッセージが表示される場合は、単にwindow.location =を実行します

于 2013-10-03T09:21:01.670 に答える
0

12030 は http 応答ですか? return または throw しない理由 (web-api または通常のコントローラーのどちらにいるかによって異なります):

新しい HttpStatusCodeResult(HttpStatusCode.BadRequest) を返します。

次にajax呼び出しで:

$.ajax({
  //.........
  statusCode: {
      408: function () {
          console.log('Call timed out');
      }
  }
});

多分

于 2012-04-25T17:20:02.817 に答える