ckeditor出现错误“从客户端(***)中检测到有潜在危险的 Request.Form值”的解决方法
ckeditor出现错误“从客户端(***)中检测到有潜在危险的 Request.Form值”的解决方法
页面中使用ckeditor,提交文章时总是出错,“从客户端(TextBox1="<p>ww</p>")中检测到有潜在危险的 Request.Form 值。”,其中“ww”是文章的正文。这是由于在.net中,Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报错上面的错误。
注意!!!:在webconfig里面加入<httpRuntime requestValidationMode="2.0"/>(VS2010使用asp.net 4.0,请求验证处理机制会使第一条失效,所以还要进行这个修改)。
如:在网页的TextBox1中输入一些HTML代码,点提交按钮后会报错。
网上搜索了一下,都是如下两个解决方法:
解决办法:
解决方案一:
在.aspx文件头中加入这句:
<%@ Page validateRequest="false" %>
解决方案二:
修改web.config文件:
<configuration>
<system.web>
<pages validateRequest="false" />
</system.web>
</configuration>
因为validateRequest默认值为true。只要设为false即可。
推荐使用方法一。
其实这两种方法都只顾着调试通过,不考虑安全性,很容易留下被注入的隐患,于是又有人提出了两个解决方法:
解决方案三:
当然,这样只能是让界面好看一些,要想抵制注入,还得从过滤上做足功夫
然后,还是有不禁用validateRequest的方法的,如下
不禁用validateRequest=false。
正确的做法是在你当前页面添加Page_Error()函数,来捕获所有页面处理过程中发生的而没有处理的异常。然后给用户一个合法的报错信息。如果当前页面没有Page_Error(),这个异常将会送到Global.asax的Application_Error()来处理,你也可以在那里写通用的异常报错处理函数。如果两个地方都没有写异常处理函数,才会显示这个默认的报错页面呢。
举例而言,处理这个异常其实只需要很简短的一小段代码就够了。在页面的Code-behind页面中加入这么一段代码:
以下是引用片段:
protected void Page_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError();
if (ex is HttpRequestValidationException)
{
Response.Write("请您输入合法字符串。");
Server.ClearError(); // 如果不ClearError()这个异常会继续传到Application_Error()。
}
}
解决方案四:
在Global.asax文件的Application_Error()来处理。这样在整个网站中都生效。
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
Exception ex = Server.GetLastError();
if (ex is HttpRequestValidationException)
{
Response.Write("请您输入合法字符串。");
Server.ClearError(); // 如果不ClearError()这个异常会继续传到Application_Error()。
}
}
ckeditor出现错误“从客户端(***)中检测到有潜在危险的 Request.Form值”的解决方法的更多相关文章
- 【异常记录(七)】MVC:从客户端中检测到有潜在危险的 Request.Form 值 的解决方法 [转]
从客户端(Content="<EM ><STRONG ><U >这是测试这...")中检测到有潜在危险的Request.Form 值. 说明: ...
- 从客户端中检测到有潜在危险的Request.Form值的解决方法
描述:从客户端中检测到有潜在危险的Request.Form值的解决方法asp.net 2.0 通常解决办法将.aspx文件中的page项添加ValidateRequest="false&qu ...
- 从客户端中检测到有潜在危险的Request.Form值 的解决方法
在提交表单时候,asp.net 提示:"从客户端(......)中检测到有潜在危险的 Request.Form 值" .asp.net中的请求验证特性提供了某一等级的保护措施防止X ...
- MVC:从客户端中检测到有潜在危险的 Request.Form 值 的解决方法
从客户端(Content="<EM ><STRONG ><U >这是测试这...")中检测到有潜在危险的Request.Form 值. 说明: ...
- MVC从客户端中检测到有潜在危险的Request.Form值的解决方法
1.ASPX页面 在页面头部的page中加入ValidateRequest="false" 2.web.config中配置validateRequest="false&q ...
- 从客户端中检测到有潜在危险的Request.Form值的解决办法
http://www.pageadmin.net/article/20141016/935.html 如果你网站iis服务器asp.net采用了4.0的版本,则默认会阻止客户端的html内容提交,提交 ...
- ueditor 添加微软雅黑字体 异常“从客户端中检测到有潜在危险的 request.form值”,解决
使用ueditor往数据库添加文本内容时,如果字体有css样式, <,>," 这些字符会导致报出异常信息:从客户端中检测到有潜在危险的 request.form值 因为这些字符有 ...
- MVC中提示错误:从客户端中检测到有潜在危险的 Request.Form 值的详细解决方法
今天往MVC中加入了一个富文本编辑框,在提交信息的时候报了如下的错误:从客户端(Content="<EM ><STRONG ><U >这是测试这...&q ...
- 从客户端中检测到有潜在危险的 request.form值[解决方法]
当页面编辑或运行提交时,出现“从客户端中检测到有潜在危险的request.form值”问题,该怎么办呢?如下图所示: 下面博主汇总出现这种错误的几种解决方法:问题原因:由于在asp.net中,Requ ...
随机推荐
- Redis源码阅读-Dict哈希字典
Dict和Java中的HashMap很相似,都是数组开链法解决冲突. 但是Redis为了高性能, 有很多比较微妙的方法,例如 数组的大小总是2的倍数,初始大小是4. rehash并不是一次就执行完,而 ...
- 微信支付v3开发(6) 收货地址共享接口
请看新版教程 微信支付开发(7) 收货地址共享接口V2 本文介绍微信支付下的收货地址共享接口的开发过程. 一. 简单介绍 微信收货地址共享,是指用户在微信浏览器内打开网页,填写过地址后,兴许能够免填 ...
- Android控件ListView获取item中EditText值
能够明白,如今没有直接方法能够获得ListView中每一行EditText的值. 解决方式:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写Ba ...
- grep -rl tttt /data/ 命令在 /data 目录下面搜寻包含tttt字符的命令
grep --help -R, -r, --recursive equivalent to --directories=recurse -l, --files-with-matches print o ...
- UFLDL深度学习笔记 (七)拓扑稀疏编码与矩阵化
UFLDL深度学习笔记 (七)拓扑稀疏编码与矩阵化 主要思路 前面几篇所讲的都是围绕神经网络展开的,一个标志就是激活函数非线性:在前人的研究中,也存在线性激活函数的稀疏编码,该方法试图直接学习数据的特 ...
- xcode ERROR ITMS
1.ERROR ITMS-90046 /90085: "Invalid Code Signing Entitlements. Your application bundle's signat ...
- django定时任务python调度框架APScheduler使用详解
# coding=utf-8 2 """ 3 Demonstrates how to use the background scheduler to schedule a ...
- eclipse 给jar包关联javadoc
1.右键点击Referenced Libraries下的jar --> 选择 Build Path --> Configure Build Path. 2.选择jar的Javadoc lo ...
- Excel中批量把数字类型转换为文本类型
客户给的excel文件中的内容全部是数值类型,这些我们要当成文本存入到数据库,所以需要把所有的数值转换为文本,但是直接通过修改单元格属性来修改的话会变成科学技数法,还有一种方法是在数值得前面加个英文的 ...
- 大数据学习系列(5)-- 局域网yum仓库搭建
https://www.cnblogs.com/nulige/p/6081192.html