用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)