【问题标题】:Rails: Sanitising input from within the controllerRails:清理控制器内部的输入
【发布时间】:2012-10-06 21:51:34
【问题描述】:

我的 Rails 3 应用程序包含一个未绑定到模型的表单。

我正在使用form_tag,我的控制器看起来有点像这样:

def results
    local_variable = params[:my_form_field].to_s
end

我在控制器中使用local_variable 执行各种其他零碎工作,所以显然我想清理我的表单以防止讨厌的用户可能输入的“非法”输入(特别是 HTML 标签,甚至是注入)。

我真的需要在控制器中而不是在我的视图中执行此操作。我可以在控制器中使用类似于to_s 的东西来删除这些字符吗?

谢谢!

【问题讨论】:

标签: html ruby-on-rails controller escaping


【解决方案1】:

您可以使用 Rails 的 Sanitize Helper:http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html

只要你不是evaling local_variable 的内容或在数据库上执行它,你应该是安全的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-08
    • 2011-03-31
    相关资源
    最近更新 更多