AjaxリクエストのRedirect()
1845 ワード
ページにはIsLogin()メソッドがあり、このリクエストのトリガーがログインしているかどうかを判断し、ログインしている場合はクエリー操作を実行し、ログインしていない場合はRedirect()をログインインタフェースに送信します.
ページは多くのAjax要求を使用してデータを取得するが、Ajax要求ではContextに実行する.Response.Redirect()でエラーが発生しました.
ネット上のいくつかの資料が与えた解決策は、Ajax要求にステータスコードを追加し、人為的にステータスコードを取得し、リダイレクトすることである.
IsLogin()メソッドでは、通常要求とAjax要求を同時に処理する必要があるので、処理する前に、現在の要求がAjax要求であるかどうかを知る必要があります.
ネット上の資料を参考にしました.http://www.cnblogs.com/sosoft/p/3793425.html
http://code.iteye.com/blog/1458364
http://www.cnblogs.com/sosoft/p/3793425.html
ログイン判定の前に、そのリクエストがAjaxリクエストであるか否かを判断し、そうでなければ直接リダイレクトし、もしそうであればJavaScriptでリダイレクトする.コードは次のとおりです.
ページは多くのAjax要求を使用してデータを取得するが、Ajax要求ではContextに実行する.Response.Redirect()でエラーが発生しました.
ネット上のいくつかの資料が与えた解決策は、Ajax要求にステータスコードを追加し、人為的にステータスコードを取得し、リダイレクトすることである.
IsLogin()メソッドでは、通常要求とAjax要求を同時に処理する必要があるので、処理する前に、現在の要求がAjax要求であるかどうかを知る必要があります.
ネット上の資料を参考にしました.http://www.cnblogs.com/sosoft/p/3793425.html
http://code.iteye.com/blog/1458364
http://www.cnblogs.com/sosoft/p/3793425.html
ログイン判定の前に、そのリクエストがAjaxリクエストであるか否かを判断し、そうでなければ直接リダイレクトし、もしそうであればJavaScriptでリダイレクトする.コードは次のとおりです.
HttpContext context = HttpContext.Current;
bool isAjaxRequest;
try
{
string ss = context.Request.Headers["X-Requested-With"];
isAjaxRequest = (ss != null && ss == "XMLHttpRequest") ? true : false;
}
catch (System.Exception ex)
{
isAjaxRequest = false;
}