Подтвердить что ты не робот

Urldecode в рубине?

Как преобразовать

www.bestbuy.com/site/Electronics\Audio\abcat0200000.c=3fid=3dabcat0200000

в исходный формат?

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

Есть ли urldecode?

4b9b3361

Ответ 1

Ну, дело с =3f и =3d является кодировкой с кавычками для печати. Ruby может декодировать его с помощью метода .unpack("M").

Обратная косая черта? Они просто странные и неправильные. Вероятно, было бы безопасно заменить строки на /, так как обратная косая черта не должна начинаться с URL.

Ответ 2

Лучший метод URI.unescape:

decoded_uri = URI.unescape(encoded_uri)

Ответ 3

В Ruby эквивалент PHP urldecode - CGI::unescape.

Ответ 4

Через decode:

require 'uri'
URI.decode(encoded_uri)