【发布时间】:2012-01-06 13:41:14
【问题描述】:
在陈述问题之前,我想说的是,我已经阅读了所有暗示我正在做的事情是个坏主意的帖子,我 100% 同意你,但是我们的客户坚持说他想要URL 要加密,所以我们没有太多选择。
应用程序是 ASP .Net MVC 2,我们使用的是基本的默认路由 "{controller}/{action}/{id}" 其中 id 被加密。
返回加密id的代码如下:
return HttpUtility.UrlEncode(Encryptor.Encrypt(inputText));
Encrypt 方法使用 System.Security.Cryptography.RijndaelManaged 类,我们得到如下内容:
http://localhost:3396/MyController/MyAction/%253fval%253dWrikkm9UeEmHdsaMJyjgzA%253d%253d
现在当我点击链接时,我总是得到一个空白页面:
“/”应用程序中的服务器错误。
HTTP 错误 400 - 错误请求。
我猜这个错误是由 IIS 发送的,因为请求永远不会到达控制器。
任何帮助将不胜感激。
【问题讨论】:
-
这篇文章应该会有所帮助:hanselman.com/blog/…
标签: c# asp.net-mvc encryption