3
回答
请教一下如何过滤用户输入的非法html
华为云4核8G,高性能云服务器,免费试用   

在oschina中,使用插入代码时,提交回显后,就会看到被高亮格式化的代码.

Java代码

而如果我在kindeditor里输入

<pre class="brush:java; toolbar: true; auto-links: false;">java代码..</pre>就不行.

这是咋整的嘞.

 

举报
共有3个答案 最后回答: 7年前

你上当了,其实并没有高亮,只不过是在设置了一个样式而已。

你也可以给 kindeditor 的编辑区指定一些 css 来格式化 <pre> 标签的显示

--- 共有 1 条评论 ---
就是不着调谢谢小编,可能是我问的不对头,你指的是所见即所得的编辑,编辑器里也能看到代码被高亮. 俺问的是如何对客户端的输入的html进行过滤,不然回显的话可能会破话网页的结构. 7年前 回复

对输入的数据进行转义处理,使用转义序列表示 HTML 特殊字符

Spring 为此提供了 HtmlUtils 和 JavaScriptUtils 工具类,只要将动态内容在拼接之前使用工具类进行转义处理,就可以避免类似问题的发生了。

如果您不介意引入一个第三方类包,那么 jakarta commons lang 通用类包中的 StringEscapeUtils 工具类可能更加适合,因为它提供了更加全面的转义功能

--- 共有 2 条评论 ---
磊神Ray是的,可以试试。spring功能很强大 7年前 回复
就是不着调谢谢哈,spring也提供了啊,我去看看. 7年前 回复
用javascript过滤一道用户的输入框输入,然后再ajax提交上去,如果直接表单提交的,可以在服务器端代码里用一些工具类过滤xml代码。
顶部