Rails标准化URI.encode

时间:2014-09-18 17:51:53

标签: ruby-on-rails json uriencoding

如果{"foo" => "yo%20daddy"}通过网址传递,则params [:foo]与URI.encode很好地匹配,解析为:

URI.encode("yo daddy")
#=> "yo%20daddy"

然而如果" foo"作为JSON参数出现,它没有。

URI.encode("yo%20daddy")
#=> "yo%2520daddy"

标准化的解决方案是

URI.encode(URI.decode("yo daddy"))
#=> "yo%20daddy"

URI.encode(URI.decode("yo%20daddy"))
#=> "yo%20daddy"

但这看起来很愚蠢。有更好的想法吗?

0 个答案:

没有答案