码迷,mamicode.com
首页 > Web开发 > 详细

Ajax请求中的Redirect()

时间:2015-07-02 15:27:29      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

页面中有一个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进行重定向。代码如下

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;
            }

Ajax请求中的Redirect()

标签:

原文地址:http://www.cnblogs.com/DayDreamEveryWhere/p/4616148.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!