从客户端中检测到有潜在危险的 Request.Form 值

最近在做项目中出现了一个这么的问题,就是前台像后台传过去的参数有一个是html格式的,结果就出现了从客户端中检测到有潜在危险的 Request.Form 值这个问题了,百度了下,解决方案无非就是2种:

由于在.net中,Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报出“从客户端 中检测到有潜在危险的Request.Form值”这样的错。

   解决方案一: 
   在.aspx文件头中加入这句: 
   <%@ Page validateRequest="false" %>
eg:<%@ Page Language="C#" AutoEventWireup="false" ValidateRequest="false" CodeFile="你的页面.vb" Inherits="你的页面" %>

   解决方案二: 
   修改web.config文件: 
   <configuration> 
   <system.web> 
   <pages validateRequest="false" /> 
   </system.web> 
   </configuration> 
   因为validateRequest默认值为true。只要设为false即可。

上面2种方案我都测试了,应该没有适合我的项目,结果都不行,于是我想到了编码,于是在js里面就html字符串进行了编码 

var test= encodeURI("<p>测试</p>");

那么再传过去就没有这个问题了,那么只需要后台进行解码就行了

string s= Server.UrlDecode(’要解码的参数‘);

最好得到的s也就是<p>测试</p>了







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章