【发布时间】:2014-08-04 16:42:52
【问题描述】:
我有一个类似的控制器方法
public ViewResult MyMethod(long id, string pId)
{
}
我有一个类似的查询字符串
?'id=' + 10 + '&pId=' + 15
我想使用某种加密算法对其进行加密,然后我得到某种格式的查询字符串,例如
gaiSXZyTAq6Z0a5TzsrdG2LjIj0moe2m4D0qQiG7zuQ=
我在开始请求中从Global.asax 解密它,能够解密和设置查询字符串所有密钥但控制器无法获取其参数值
protected void Application_BeginRequest(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Convert.ToString(Request.QueryString)))
{
var newQueryString = SecurityEncryption.DecryptionValue(HttpUtility.UrlDecode(Convert.ToString(Request.QueryString)).Replace(" ", "+"));
Request.QueryString.AllKeys[0] = newQueryString;
}
}
我希望 Controller Method 能够获取它的参数值,我该如何实现呢?
请任何人都可以帮助我。
【问题讨论】:
-
@NachoLaborde 这个问题在 asp.net 中,我在 Asp.net MVC 中问它,在这里我想得到类似中间的东西,它将我的加密查询字符串转换为原始格式以及我的控制器方法获取这些参数。
-
@NachoLaborde 感谢您的链接,让我检查一下
标签: c# asp.net-mvc encryption url-rewriting global-asax