0
Customer.find(:all, :select => 'id', :order => 'updated_at DESC', :readonly => true, :conditions => { :status_id => Customer.id_for_status(params[:id].to_sym) }, :offset => offset, :limit => 30).collect(&:id)
拒绝以上是我在该查询我收到警告像获取警告:服务
Symbol conversion from unsafe string (parameter value) near line 33: params[:id].to_sym
这是拒绝服务攻击的警告。任何人有任何想法如何解决这个警告?
在此先感谢
方法'id_for_status'可以更改为接受字符串而不是符号? – Baldrick
只是一个受过教育的猜测:尝试截断一些合理的最大长度:'params [:id] [0 ... 20] .to_sym'。我的猜测是铁轨试图保护你免于使用大量的符号实习空间(一旦使用符号,持有它的人物的空间永远不会被释放)。如果这不起作用,则必须在符号转换之前验证参数。 – Gene
谢谢@Baldrick,这是有效的 –