日期:2014-05-18  浏览次数:20425 次

URL里的参数值加密
我想对URL里的参数值加密,但ENCODE后里面有"+"被识别为空格,请问有没有好的方案?

------解决方案--------------------
用ASP.NET 2.0的话可以通过httpModule来实现,特点是不需要改动现有的代码
下载源码
http://blog.madskristensen.dk/file.axd?file=QueryStringModule.zip

改Web.config文件
< httpModules > 

< add type = "QueryStringModule" name = "QueryStringModule" /> 

</ httpModules >

由于ASP.NET 2.0的bug,这个httpmodule会在postback的时候丢失QueryString值,你需要用
http://www.scottgu.com/blogposts/urlrewrite/UrlRewrite_HttpModule1.zip
里面的FormRewriter来修正

这是最完美的解决方案,使得原来的代码一点也不需要改变
------解决方案--------------------
Response.Redirect("ChiefAdd.aspx?id=" + this.UrlEncode(id));