首页 > Web开发 > 详细

Url.IsLocalUrl

时间:2015-01-07 18:14:18      阅读:372      评论:0      收藏:0      [点我收藏+]

问题:

Url.IsLocalUrl(returnUrl) 一直为false

解决方法:

url.islocalurl可以防止跳转攻击

页面之间传值,post过来一个参数,例如http://localhost:3221/Account/LogOn?returnUrl=/HealthDisplay/HistoryTrace

记住 这种判断 是针对于mvc route 例如这种方式/HealthDisplay/HistoryTrace  若为http://baidu.com这无法判断

故有这种判断方式 if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
                        && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))更为复杂。

Url.IsLocalUrl

原文:http://www.cnblogs.com/wangjiachen/p/4208783.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!