Ruby Sanitize Code ... 为什么 & sanitized

标签 ruby sanitize

我目前使用以下代码在存储字符串之前对其进行清理:

ERB::Util::h(string)

当字符串已经像这样清理后,我的问题就出现了:

string = "Watching baseball `&` football"

净化后的字符串看起来像:

sanitized_string = "Watching baseball `&` football"

我可以通过替换将 < 变成 < 和 > 变成 > 来净化吗?

最佳答案

先转义,再转义:

require 'cgi'
string = "Watching baseball &amp; football"

CGI.escapeHTML(CGI.unescapeHTML(string))

=> "Watching baseball &amp; football"

关于Ruby Sanitize Code ... 为什么 & sanitized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1603513/

相关文章:

ruby - 将参数传递给 rspec 共享示例

ruby-on-rails-4 - Rails 4.2 - 如何正确使用 rails sanitize 来防止跨脚本漏洞

javascript - 绕过 HTML 导入的安全性

javascript - 清理稍后将出现在 HTML 中的输入

ruby-on-rails - 清理输入

ruby-on-rails - Rails collection_select 提示出现在初始页面加载时,之后不会出现。任何修复?

ruby - 我可以覆盖 Ruby 中的系统时区吗?

ruby-on-rails - 如何检查 'kind_of?' 到 'count' 或在 RSpec 'its' 功能内运行其他方法?

javascript - 在 javascript 中清理innerHTML

ruby - join 如何在 ruby​​ 线程上工作?