QueryString 整站过滤
来源:互联网 发布:淘宝详情页素材网站 编辑:程序博客网 时间:2024/04/30 21:13
对于QueryString的传值是每个程序员都要用到的。但是如何过滤QueryString的方法万千。下面我整理一个方法
大家继续优化讨论
第一步 web.config 加入键值
例如:
<add key="SafeRequest" value="id-int32,nid-int32,xid-int32,keyword-char" />
第二步 Global.asax 加入如下
void Application_BeginRequest(object source, EventArgs e)
{
String[] SafeRequest = System.Web.Configuration.WebConfigurationManager.AppSettings["SafeRequest"].ToString().Split(',');
for (int i = 0; i < SafeRequest.Length; i++)
{
String RequestName = SafeRequest[i].Split('-')[0];
String RequestType = SafeRequest[i].Split('-')[1];
isValidRequest(RequestName, RequestType);
}
}
public void isValidRequest(string parameterName, string parameterType)
{
string parameterValue = Request.QueryString[parameterName];
if(parameterValue == null) return;
if(parameterType.Equals("int32"))
{
//future.mystring.IsNumeric是我自己做的一个类判断是不是数字。大家根据自己需要可以自行写一段(Bool)
if(!future.mystring.IsNumeric(parameterValue)) Response.Redirect("index.aspx");
}
if (parameterType.Equals("char"))
{
////future.mystring.IsNumeric是我自己做的一个类判断是不是字符,是否含有敏感字符。大家根据自己需要可以自行写一段(Bool)
if (!future.mystring.MatchSqlString(parameterValue)) Response.Redirect("index.aspx");
}
}
这样整站通用了只要是地址栏传值都会经过过滤的 如果不合法 都会跳转到自定义页面!!本例提供基本思路和代码希望大家继续讨论优化。。。。。。。
- QueryString 整站过滤
- queryString
- QueryString
- querystring
- querystring
- Request.QueryString
- Request.QueryString
- querystring用法
- Request.QueryString
- Request.QueryString
- js QueryString
- JS querystring
- node querystring
- 过滤
- 过滤
- 过滤
- 过滤
- 过滤
- WEB使用挖掘译(二)
- 使用lucene的多字段排序--回复网友BUFFON
- XML的节点与元素的区别
- 弹出窗口总结
- What is JSON, JSON-RPC and JSON-RPC-Java?
- QueryString 整站过滤
- C盘被锁死
- Win32学习笔记 第三章 HelloWin 选择自 villager 的 Blog
- HowTo:如何使用Oracle的Decode函数进行多值判断
- 正确地做事与做正确的事同样重要
- Element类提供的方法访问一个XML元素中含有的信息
- 一位工作10年的电子工程师的忠告
- Red Hat Linux 9: Red Hat Linux x86 安装指南-- 磁盘分区简介
- [ASP.NET学习笔记之十八].NET中的正则表达式