博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
爱上MVC~ajax调用分部视图session超时页面跳转问题
阅读量:5878 次
发布时间:2019-06-19

本文共 954 字,大约阅读时间需要 3 分钟。

这个问题出现了很多年了,都没有解决,问题是这样的,有一个需要授权才可以访问的分部视图,在一个view中使用ajax的方法去调用它,然后更新页面的局部DIV,这时,如果你长时间不操作,session会超时,这是正常的,但在超时时,如果你再调用ajax方法,这时你的页面跳转将会在DIV局部完成,这是我们不希望看到的!

事实上,引起这个问题的原因是MVC内部跳转机制的问题,它只到在当前的action所渲染的view上进行跳转,如果我们希望在当前页面跳,需要将MVC方法改为JS方法,代码如下

filterContext.Result = new RedirectToRouteResult("Default", new RouteValueDictionary {                       { "Action",_failActionName },                      { "Controller", _failControllerName},                       { "returnUrl", returnUrl} });

修改成JS的方式

string url = new UrlHelper(filterContext.RequestContext).Action(                _failActionName,                _failControllerName,                new                {                    returnUrl = returnUrl                });  //防治ajax调用分部视图出现登陆超时,在局部跳转URL的问题   filterContext.HttpContext.Response.Write("");   filterContext.HttpContext.Response.End();

这几行代码就可以解决几年困扰我的问题了,所以,对于一个问题的解决需要我们仔细去研究,去思考!

转载于:https://www.cnblogs.com/lori/p/5484718.html

你可能感兴趣的文章
NeHe OpenGL教程 第三十五课:播放AVI
查看>>
Linux下ping命令、traceroute命令、tracert命令的使用
查看>>
js replace,正则截取字符串内容
查看>>
socket
查看>>
Highcharts使用表格数据绘制图表
查看>>
Thinkphp5笔记三:创建基类
查看>>
LNMP之编译安装PHP出现的问题
查看>>
hdu5373
查看>>
4.单链表的创建和建立
查看>>
testng生成报告 testng-xslt 美化测试报告
查看>>
Android 好看的搜索界面,大赞Animation
查看>>
查询反模式 - GroupBy、HAVING的理解
查看>>
[转]动态加载javascript
查看>>
【协议】5、gossip 协议
查看>>
基于配置文件的redis的主从复制
查看>>
hasura graphql 角色访问控制
查看>>
springmvc中controller内方法跳转forward?redirect?
查看>>
C#委托,事件理解入门 (译稿)转载
查看>>
容器的end()方法
查看>>
[转] Agile Software Development 敏捷软件开发
查看>>