如何过滤textbox中输入的类似<table>的标签
如何过滤textbox中输入的类似<table>的标签
我遇到这样的错误
从客户端(txtTitle="<table>")中检测到有潜在危险的 Request.Form 值。
说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示危及应用程序安全的尝试,如跨站点的脚本攻击。通过在 Page 指令或 配置节中设置 validateRequest=false 可以禁用请求验证。但是,在这种情况下,强烈建议应用程序显式检查所有输入。
异常详细信息: System.Web.HttpRequestValidationException: 从客户端(txtTitle="<table>")中检测到有潜在危险的 Request.Form 值。
问题点数:100、回复次数:11Top
1 楼hchxxzx(NET?摸到一点门槛)回复于 2005-04-03 23:10:02 得分 50
<!--设置页面不检测HTML语法-->
<pages enableSessionState = "true" validateRequest="false"/>
</system.web>
在WEB.CONFIG的</system.web>之上,写如上语句.
这个错误是安全方面的默认设置.加上一句就不会了Top
2 楼valu(V6bbs Ver1.4发布(仿西祠xici):www.v6bbs.com)回复于 2005-04-03 23:45:18 得分 0
同意楼上Top
3 楼yufenfeila(雨纷飞啦)回复于 2005-04-03 23:45:19 得分 0
也可以用Replace方法将所有的HTML标签删除Top
4 楼tophifi(黑字先生)回复于 2005-04-04 00:17:40 得分 30
Server.HtmlEncode(string)Top
5 楼LoveCherry(论成败,人生豪迈;大不了,重头再来!^_^)回复于 2005-04-04 07:45:46 得分 0
我觉得validateRequest有点太那个了,设置为false吧Top
6 楼qing_zhou(轻舟)回复于 2005-04-04 08:03:01 得分 0
黑子先生的方法好Top
7 楼cuike519(I will be back!)回复于 2005-04-04 08:08:09 得分 10
请参考如下文档:
http://www.4guysfromrolla.com/webtech/042501-1.shtmlTop
8 楼hchxxzx(NET?摸到一点门槛)回复于 2005-04-04 08:51:40 得分 0
它出现的这个问题,不是有危险标签必须清除的问题,而是。NET的设置,只要在提交时,有这些东西,它就会报警出错。提交时,你还来不及对它作处理呢。Top
9 楼anycall2004(没事,瞎转悠!)回复于 2005-04-04 08:55:31 得分 0
page validateRequest=falseTop
10 楼zhanqiangz(闲云野鹤-Overriding)回复于 2005-04-04 08:56:07 得分 10
最简单的办法就是Server.HtmlEncode()!
你也可以用正则表达式验证不可输入.Top
11 楼lovelxj(伊斯人,吾谁与归)回复于 2005-04-04 09:06:50 得分 0
所以还是用一楼的方法好Top




