加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails清理()方法有多好?

发布时间:2020-12-16 20:42:13 所属栏目:百科 来源:网络整理
导读:我可以在我计划向其他用户显示的用户输入的文本上使用 ActionView::Helpers::SanitizeHelper#sanitize吗?例如,是否正确处理 all cases described on this site? 另外,文档提到: Please note that sanitizing user-provided text does not guarantee that
我可以在我计划向其他用户显示的用户输入的文本上使用 ActionView::Helpers::SanitizeHelper#sanitize吗?例如,是否正确处理 all cases described on this site?

另外,文档提到:

Please note that sanitizing
user-provided text does not guarantee
that the resulting markup is valid
(conforming to a document type) or
even well-formed. The output may still
contain e.g. unescaped ’<’,’>’,’&’
characters and confuse browsers.

最好的办法是什么?在显示之前通过Hpricot传递消毒的文字?

解决方法

Ryan Grove的 Sanitize比Rails 3消毒得更远.它确保输出HTML格式良好,并有三个内置的白名单:

消毒::配置::受限
只允许非常简单的内联格式化标记.没有链接,图像或块元素.

消毒::配置:: BASIC
允许各种标记,包括格式化标签,链接和列表.不允许使用图像和表格,链接仅限于FTP,HTTP,HTTPS和mailto协议,并将一个属性添加到所有链接以减轻SEO垃圾邮件.

Sanitize :: Config :: RELAXED允许比BASIC更广泛的标记,包括图像和表格.链接仍然限于FTP,而图像仅限于HTTP和HTTPS.在这种模式下,没有添加到链接.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读