zoukankan      html  css  js  c++  java
  • Ajax请求中的Redirect()

    页面中有一个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;
                }
  • 相关阅读:
    KafkaOffsetMonitor
    锋利的KATANA
    用grunt搭建自动化的web前端开发环境
    网上书店订单功能的实现
    作用域和控制器
    使用CLK.AspNet.Identity提供以角色为基础的访问控制(RBAC)
    ABP日志管理
    .NET开源项目
    服务总线
    Message解析流程(转)
  • 原文地址:https://www.cnblogs.com/DayDreamEveryWhere/p/4616148.html
Copyright © 2011-2022 走看看