Rails默认用 h 来转义html,如果我们希望输出带有html格式的信息,此时应加上sanitize方法,它可以吧<form> 和 <script>、on=、javascript:等危险标签统统去掉!
一条原则:不用h就用 sanitize!
Sanitize太彻底了,去掉了所有的html标签,包括图片。
自定义选项
通过查询API,
<%= sanitize @article.body, :tags => %w(table tr td), :attributes => %w(id class style) %>
比如,对于商铺简介,显示方式为:
<%= sanitize @league.intro, :tags => %w(p img), :attributes => %w(style src height width alt ) %>
本文介绍了Rails框架中sanitize和h方法的区别及使用场景。sanitize用于清除潜在危险的HTML标签,确保输出安全;而h则用于转义HTML,防止XSS攻击。文章还提供了sanitize的自定义选项示例。
1232

被折叠的 条评论
为什么被折叠?



