用ruby解码?

用ruby解码?,ruby,Ruby,我如何转换 www.bestbuy.com/site/Electronics\Audio\abcat0200000.c=3fid=3dabcat0200000 变成它的原始格式 www.bestbuy.com/site/Electronics/Audio/abcat0200000.c?id=abcat0200000 是否有urldecode?那么=3f和=3d的东西被引用为可打印编码。Ruby可以使用.unpack(“M”)方法对其进行解码 反斜杠?他们只是奇怪和错误。将它们替换为/可能是安

我如何转换

www.bestbuy.com/site/Electronics\Audio\abcat0200000.c=3fid=3dabcat0200000
变成它的原始格式

www.bestbuy.com/site/Electronics/Audio/abcat0200000.c?id=abcat0200000

是否有
urldecode

那么
=3f
=3d
的东西被引用为可打印编码。Ruby可以使用
.unpack(“M”)
方法对其进行解码


反斜杠?他们只是奇怪和错误。将它们替换为
/
可能是安全的,因为反斜杠不应该首先出现在URL中。

Ruby中PHP的
urldecode
的等价物是
CGI::unescape

更好的方法是:
URI.unescape已弃用


通过
解码

require 'uri'
URI.decode(encoded_uri)

为什么不改用
CGI.unescape
呢?来自最新的Ruby文档:“此方法已过时,不应使用。取而代之,请使用,或根据您的特定用例而定。”根据,的评论也适用于此:
URI.decode\u www\u form
URI.decode\u www\u form\u component
require 'uri'
URI.decode(encoded_uri)