问题标签 [html-safe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1183 浏览

ruby-on-rails-3 - Ruby/Rails - 有没有一种简单的方法来制作硬编码的 HTML 符号 html_safe?

在我看来,我想在我的链接中显示一些直角双引号。

在 Rails 3 之前,这有效:

<%= link_to "&raquo; #{@category.name}", some_path %>

现在,如果我想指定&raquo;为 html_safe 而不是链接文本的其余部分,我该怎么办?

换句话说,我不想这样做:

<%= link_to "&raquo; #{@category.name}".html_safe, some_path %> 我不希望将其@category.name视为 html_safe。

这会产生所需的结果:

<%= link_to "&raquo;".html_safe + " #{@category.name}", some_path %>

但是,如果我这样做:

<%= link_to "#{@category.name}" + "&raquo;".html_safe, some_path %>

角度引号的输出不被视为安全。我&raquo;在我的页面上看到而不是»。

为什么?

我尝试提取"&raquo;".html_safe到具有相同结果的辅助方法。

有没有办法在 Rails 3 中轻松地将硬编码文本/符号指定为 HMTL 安全?

谢谢。

0 投票
2 回答
1476 浏览

ruby-on-rails - html_safe 和 gsub

在我的 CMS 应用程序中,我使用 gsub 将用户提供的 html 模板(字符串)的一部分替换为来自应用程序的动态代码(例如来自用户的评论或页面内容)。我正在从 Rails 2.3.5 升级到 2.3.12 以准备迁移到 Rails 3,并安装了 rails_xss gem 来尝试对我的字符串进行排序。

我想知道是否有办法将字符串 gsub 转换为另一个字符串(模板),将传入的字符串视为不安全,但将模板部分视为安全?

我已经感觉到我将不得不重新考虑这一点,并且可能围绕我关注的区域拆分模板并将我的动态位插入间隙中,将整个事情作为要呈现的各种安全和不安全字符串的数组传递出去。这听起来像理智的方式吗?

更新

这是我目前所做的一个例子。它位于从布局中调用的助手中。主题是从数据库中获取的。它只是一个带有特定 HTML 注释的字符串,我们希望将其替换为实际内容:

这些都是简单的情况,我也有评论,其中包含实际参数(例如,指定绘制索引栏的深度,其中页面上可能有很多)。我使用扫描查找详细信息,然后再次使用 gsub 将注释替换为实际的索引条代码。

我完全愿意接受任何重构建议,因为这是我的代码中根本无法满足我的一个领域。

0 投票
1 回答
686 浏览

ruby - Rails 3 和 html_safe 混淆(在聊天中允许图片(微笑)但拒绝其他所有内容)

我这里有一个将表情符号(如“:-)”)替换为图标的模块:

所以图片显示我正在使用 html_safe,如下所示:

但它不适合我,因为但是也会显示图片和其他标签。

我的问题是:如何只显示我的微笑,而忽略其他标签?

0 投票
2 回答
3627 浏览

ruby-on-rails - 未定义的方法 `html_safe' 用于#使用recaptcha

我在拨打电话的线路上收到此错误recaptcha_tags

我正在与rails 2.3.10

我该如何解决这个错误?

非常感谢。

0 投票
1 回答
2887 浏览

ruby-on-rails - rails to_json.html_safe Uncaught SyntaxError: Unexpected identifier

我在我的股票 rails 3.1 应用程序的项目#index.html.erb 中有一个 javascript 部分,内容如下:

但是,Chrome 的控制台抱怨“未捕获的语法错误:意外的标识符”

现在,如果我像这样删除“var projects”行之后的任何内容

一切都很好,当在 Chrome javascript 控制台中键入“项目”时,我确实得到了对象列表 [对象,对象,对象,...,对象]

我无法解决这里的问题,你能帮忙吗?

谢谢!

0 投票
2 回答
2131 浏览

ruby-on-rails-3 - Rails3 CSV 用 "" 代替实际引号

类似于这个问题,除了我不在html_safe整个项目中的任何地方使用。

我像这样生成一个 CSV 文件index.csv.erb

问题:如果数据库(ActiveRecord/MySQL)中的昵称为 NULL,则 CSV 文件关联元素变为&quot;&quot;. 我会期待"",甚至什么都不会。

结果文件示例:

我怎样才能防止这种情况发生?

0 投票
1 回答
339 浏览

ruby-on-rails - 带有 Rails 安全漏洞的 FCKEditor

我在我的 Ruby on Rails 应用程序中使用 FCKEditor。用户使用 FCKEditor 添加博客文章。

然后我使用显示博客文章

我知道 FCKEditor 正在转义任何 javascript 代码,但是如果用户使用直接参数发布请求并设置包含一些 javascript 的博客文章正文怎么办。这可能是安全漏洞。

知道如何安全地使用 FCKEditor 和 Rails 吗?

0 投票
2 回答
930 浏览

ruby-on-rails - 将 ActiveRecord 属性标记为 html_safe

我们有一个带有 html 属性的 ActiveRecord 模型(比如Post#body)。有没有一种调用bodyapost返回html_safe?字符串的好方法?例如:

否则问题是我们必须调用raw我们显示该字段的所有内容。

0 投票
1 回答
1420 浏览

ruby-on-rails - 将带有 &-hash-char-semicolon 字符的 Ruby 字符串转换为 ascii 或 html 友好字符串

使用 Rails 3 我正在使用在 drupal 或其他东西中生成的 XML 提要。它给我的标签看起来像:

所以意图是这应该看起来像:

然后可以使用<%= @mystring.html_safe %>or<%= raw @mystring %>或其他东西在视图中呈现。问题在于以这种方式呈现字符串只会将子字符串&#60;转换为<字符。我需要一种双重原始或双重未编码来首先处理 chr,然后将标签呈现为 html 安全。

任何人都知道这样的事情:

0 投票
1 回答
268 浏览

ruby-on-rails-3 - 在 Rails 中构建 html 字符串时比 ''.html_safe 更好的方法?

典型模式:

这工作正常。有没有比这更好/更短/更好的方法,特别是调用''.html_safe