Как кодировать только незакодированные URL?

URL с разных источников могут быть в разном виде: где-то уже закодированные, где-то - еще нуждающиеся в кодировании.
Использую
def urlencode(url)
  url = begin
    url = URI(url)
    url
  rescue URI::InvalidURIError
     URI.encode(url)
  end
end


Есть ли более правильные способы?
  • Вопрос задан
  • 2489 просмотров
Решения вопроса 1
@vsadm
Бессистемный архитектор
Всегда сначала декодируйте URL, а затем снова кодируйте. Декодирование незакодированного URL-а — немодифицирующая операция, изменений не привнесет.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы