Co robi to narzędzie
Kodowanie URL, nazywane też kodowaniem procentowym (percent-encoding), zastępuje znaki niedozwolone w URL-u lub mające w nim specjalne znaczenie znakiem %, po którym następują dwie cyfry szesnastkowe. Spacja staje się %20, ampersand %26, a tekst spoza ASCII, taki jak 中文, jest najpierw zamieniany na bajty UTF-8, po czym każdy bajt zapisywany jest jako %XX.
To narzędzie koduje tekst, abyś mógł bezpiecznie umieścić go w query stringu, segmencie ścieżki lub żądaniu API, oraz dekoduje napisy zakodowane procentowo, skopiowane z logów, paska adresu przeglądarki czy zrzutów HTTP, z powrotem na czytelny tekst.
Jak używać
- Wklej tekst lub URL w polu Wejście albo kliknij Przykład.
- Wybierz Koduj lub Dekoduj.
- Przy kodowaniu wybierz Komponent, aby zakodować pojedynczą wartość (np. frazę wyszukiwania), lub Cały URL, aby zachować
:,/,?,&i=bez zmian. - Włącz Spacja jako + dla danych formularzy HTML oraz Każda linia osobno, aby przetworzyć listę wartości za jednym razem.
- Skopiuj lub pobierz wynik. Jeśli dekodowanie się nie powiedzie, błąd wskaże pozycję uszkodzonej sekwencji escape.
Przykład
Zakodowanie frazy wyszukiwania hello world & more jako komponentu daje:
hello%20world%20%26%20more
Zdekodowanie q=%E4%BD%A0%E5%A5%BD daje q=你好.
Kiedy czego używać
- Ręczne budowanie query stringa: zakoduj każdą wartość jako komponent, a następnie połącz je za pomocą
&i=. - Porządkowanie pełnego linku zawierającego spacje lub chińskie znaki: użyj Cały URL, aby zachować strukturę linku.
- Czytanie logów serwera: dekoduj z włączoną opcją Spacja jako +, bo wiele serwerów zapisuje dane formularzy w tym formacie.
FAQ
› Czym różni się „Komponent” od „Cały URL”?
Komponent koduje każdy znak zarezerwowany, w tym / ? & = i #, więc wynik jest bezpieczny wewnątrz pojedynczego parametru zapytania lub segmentu ścieżki. Odpowiada to encodeURIComponent z JavaScriptu. Cały URL zachowuje te znaki, aby adres nadal działał jako link, co odpowiada encodeURI.
› Czy spacje powinny stać się %20 czy +?
Używaj %20 w ścieżkach i w większości API. Używaj + tylko dla danych formularzy HTML (application/x-www-form-urlencoded), czyli tego, co przeglądarki wysyłają przy zatwierdzaniu formularza. W takim przypadku włącz „Spacja jako +”.
› Dlaczego przy dekodowaniu dostaję błąd „not valid UTF-8”?
Bajty %XX nie tworzą kompletnego znaku UTF-8, zwykle dlatego, że tekst ucięto w środku znaku wielobajtowego albo zakodowano go w starszym zestawie znaków, takim jak GBK czy Latin-1.
› Czy moje dane są wysyłane na serwer?
Nie. Kodowanie i dekodowanie działają w całości w twojej przeglądarce.