Przejdź do treści

Zakoduj i zdekoduj adresy URL

Zakoduj lub zdekoduj adresy URL, wartości zapytań i dane formularzy z pełną obsługą UTF-8, a każdy parametr zapytania zobaczysz osobno. Wszystko działa w przeglądarce.

Co kodujesz?

encodeURIComponent: zamienia wszystko oprócz liter, cyfr i - _ . ! ~ * ' ( ). Użyj go dla wartości jednego parametru.

Zakodowane procentowo
Wynik pojawia się tutaj w trakcie pisania.
Działa w przeglądarce · bez przesyłania na serwerJak to działa

Jak korzystać: Kodowanie i dekodowanie URL

  1. 1

    Wybierz Koduj lub Dekoduj

    Koduj zamienia spacje i znaki specjalne na %XX; Dekoduj zamienia %XX z powrotem na czytelny tekst.

  2. 2

    Wybierz, co kodujesz

    Wartość zapytania dla jednego parametru, Cały adres URL dla pełnego adresu albo Dane formularza, gdy spacje mają zamienić się w +.

  3. 3

    Wklej tekst lub link

    Wynik aktualizuje się podczas pisania, a dla pełnego adresu URL zobaczysz rozbicie na części i parametry.

  4. 4

    Skopiuj wynik

    Skopiuj go, zapisz jako plik albo przenieś z powrotem do pola wejściowego, żeby sprawdzić, czy wraca do oryginału.

Limity i Pro

Za darmo, bez rejestracji i bez limitu długości wklejanego tekstu; wyniki dłuższe niż 600 000 znaków są pokazywane częściowo, a kopiowane i zapisywane w całości.

Pro usuwa reklamy; konwerter jest taki sam w każdym planie. Zobacz Pro

O narzędziu: Kodowanie i dekodowanie URL

Adresy URL mogą zawierać tylko ograniczony zestaw znaków ASCII, dlatego wszystko inne – spacje, znaki diakrytyczne, emoji i zarezerwowane symbole użyte jako dane – trzeba zapisać jako % i dwie cyfry szesnastkowe dla każdego bajtu UTF-8. Ta strona konwertuje w obie strony i pokazuje dokładnie, co się zmieniło.

Trzy tryby odpowiadają trzem miejscom, w których kodowanie naprawdę się przydaje. Tryb wartości zapytania działa jak encodeURIComponent z JavaScriptu i sprawdzi się przy pojedynczym parametrze, fragmencie ścieżki albo adresie przekierowania osadzonym w innym adresie URL. Tryb całego adresu URL działa jak encodeURI: nie rusza schematu, ukośników, znaku zapytania, ampersandów ani znaków równości i zamienia tylko to, co zepsułoby adres. Tryb danych formularza jest zgodny z application/x-www-form-urlencoded, w którym spacja zamienia się w plus, tak jak w formularzach HTML i w URLSearchParams.

Wklej cały link, a panel z rozbiciem pokaże schemat, host, port, ścieżkę i fragment oraz tabelę wszystkich parametrów zapytania wraz z ich zdekodowanymi wartościami. To wygodne przy czytaniu linków śledzących, wywołań zwrotnych OAuth i podpisanych adresów. Dekodowanie zatrzymuje się na błędnych danych i wskazuje miejsce: samotny znak %, po którym nie ma dwóch cyfr szesnastkowych, albo sekwencje bajtów, które nie są poprawnym UTF-8, co zwykle oznacza, że starszy system zakodował tekst jako Latin-1.

Kodowanie procentowe nie jest szyfrowaniem i niczego nie skraca – do tego służy skracacz linków. Konwersja Base64 i encji HTML jest na dwóch pozostałych kartach.

Prywatność

Adresy URL i tekst są kodowane oraz dekodowane na tej stronie, więc linki z tokenami, adresami e-mail czy identyfikatorami sesji nigdy nigdzie nie trafiają. Wybrany tryb zapisuje się w pamięci lokalnej na przyszłość; wklejone dane nie.

Kodowanie i dekodowanie URL: najczęstsze pytania

Czego użyć: encodeURI czy encodeURIComponent?
encodeURIComponent, czyli tryb wartości zapytania, wybierz dla wszystkiego, co wstawiasz do adresu URL: frazy wyszukiwania, wartości parametru czy zagnieżdżonego adresu przekierowania. Zamienia on znaki & = ? /, więc nie zostaną uznane za część struktury. encodeURI, czyli tryb całego adresu URL, stosuj tylko do kompletnego adresu o poprawnej strukturze, w którym trzeba poprawić spacje lub znaki spoza ASCII.
Dlaczego spacja to raz %20, a raz +?
Kodowanie procentowe zdefiniowane dla adresów URL zapisuje spację jako %20. Formularze HTML używają starszego formatu, application/x-www-form-urlencoded, w którym spacja to +, a prawdziwy plus to %2B. Oba warianty są częste w zapytaniach. Przy dekodowaniu wartości wysłanych z formularza wybierz tryb danych formularza, bo inaczej + pozostanie plusem.
Co znaczy „nieprawidłowy UTF-8” przy dekodowaniu?
Współczesne adresy URL kodują każdy znak jako jego bajty UTF-8, więc é to %C3%A9. Niektóre starsze systemy używały Latin-1, gdzie é to pojedynczy bajt %E9, a taka sekwencja nie jest poprawnym UTF-8. Błąd pokazuje swoją pozycję. Zakoduj źródło ponownie jako UTF-8 albo popraw sekwencję Latin-1 ręcznie, jeśli dotyczy kilku znaków.
Czy zobaczę parametry długiego linku śledzącego?
Tak. Wklej pełny link z prefiksem https://, a pod wynikiem pojawi się panel z rozbiciem. Wyświetla host, ścieżkę i fragment oraz każdy parametr zapytania ze zdekodowaną wartością, także powtarzające się klucze, więc tagi UTM, wartości state z OAuth i zagnieżdżone adresy przekierowań staną się czytelne bez dekodowania ich po kolei.
Czy podwójne kodowanie adresu URL powoduje problemy?
Tak, podwójne kodowanie to częsty błąd: znak % z pierwszego przebiegu zamienia się w %25, więc %20 staje się %2520, a serwer dostaje złą wartość. Jeśli po jednym dekodowaniu nadal widzisz sekwencje %XX, tekst zakodowano dwa razy. Kliknij Użyj wyniku jako danych wejściowych i zdekoduj ponownie, żeby odzyskać oryginał.

Inne zadania z tym narzędziem