Jak uniknąć podwójnego kodowania URL podczas renderowania adresów URL w mojej witrynie?

Użytkownicy udostępniają zarówno prawidłowo ucieczkowe adresy URL, jak i nieprzetworzone adresy URL do mojej witryny w postaci tekstu; na przykład uważam te dwa adresy URL za równoważne:

https://www.cool.com/cool%20beans
https://www.cool.com/cool beans

Teraz chcę je renderować jako<a> tagi później, podczas przeglądania tych danych. Utknąłem między zakodowaniem danego tekstu i uzyskaniem tych linków:

<a href="https://www.cool.com/cool%2520beans">   <!-- This one is broken! -->
<a href="https://www.cool.com/cool%20beans">

Lub nie koduje go i otrzymuje to:

<a href="https://www.cool.com/cool%20beans">
<a href="https://www.cool.com/cool beans">       <!-- This one is broken! -->

Jakie jest najlepsze wyjście z punktu widzenia użytkowników dzięki nowoczesnym przeglądarkom? Jestem rozdarty między przejściem dekodowania przez ich wejście lub drugą opcją, którą wymieniłem powyżej, w której nie kodujemyhref atrybut.

questionAnswers(1)

yourAnswerToTheQuestion