Koder i dekoder URL
Koduj procentowo tekst do URL-i i query stringów, dekoduj zakodowane adresy i rozkładaj dowolny URL na części ze zdekodowanymi parametrami zapytania.
Działa w przeglądarceBez rejestracjiNic nie jest wysyłane
Składniki
Parametry zapytania
Jak używać: Kodowanie / dekodowanie URL
- Wybierz Koduj lub Dekoduj.
- Przy kodowaniu wybierz Komponent dla pojedynczej wartości parametru lub segmentu ścieżki, Pełny URL, aby zachować strukturę adresu, lub Dane formularza dla
application/x-www-form-urlencoded. - Wklej tekst. Wynik pojawia się natychmiast; błędne sekwencje są raportowane z ich pozycją.
- Wklej pełny URL do parsera URL, aby zobaczyć jego host, ścieżkę, fragment i każdy parametr zapytania po zdekodowaniu.
Czym jest kodowanie URL?
URL-e mogą zawierać tylko ograniczony zestaw znaków ASCII (RFC 3986). Wszystko inne, w tym spacje, litery spoza alfabetu angielskiego i znaki o specjalnym znaczeniu, jak &, ? i #, zapisuje się jako znak procentu i dwie cyfry szesnastkowe dla każdego bajtu UTF-8. Spacja staje się %20, a é – %C3%A9.
encodeURIComponent a encodeURI
| Funkcja | Pozostawia bez zmian | Zastosowanie |
|---|---|---|
encodeURIComponent | A-Z a-z 0-9 - _ . ~ | Pojedyncza wartość parametru, segment ścieżki lub nazwa parametru |
encodeURI | Także : / ? # [ ] @ ! $ & ' ( ) * + , ; = | Cały URL, którego struktura musi przetrwać |
Użycie encodeURI dla wartości parametru to klasyczny błąd: & wewnątrz wartości nie zostaje zakodowany, więc dzieli parametr na dwa. Tryb Komponent w tym narzędziu koduje też ! ' ( ) * dla ścisłej zgodności z RFC 3986.
%20 czy + dla spacji?
W ścieżkach spacja musi być zapisana jako %20. W formularzach HTML (application/x-www-form-urlencoded) i wielu query stringach spację zapisuje się jako +. Przy dekodowaniu włącz Traktuj + jako spację dla danych formularzy, a wyłącz, gdy liczy się dosłowny znak plus, np. w jane+test@example.com.
Najczęściej zadawane pytania
Dlaczego przy dekodowaniu pojawia się „Błędna sekwencja”?
% muszą następować dokładnie dwie cyfry szesnastkowe. Dosłowny znak procentu, jak w „50% taniej”, powinien być zakodowany jako %25. Błąd pokazuje pozycję nieprawidłowej sekwencji.Co oznacza „Nieprawidłowa sekwencja bajtów UTF-8”?
%E9 dla é zamiast %C3%A9), albo ciąg został ucięty w połowie znaku.Kodować cały URL czy tylko parametry?
= i &. Zakodowanie całego URL-a w trybie komponentu zakodowałoby także :// i zepsuło adres.Czy podwójne kodowanie to problem?
%20 w %2520. Jeśli widzisz %25, po którym następują cyfry szesnastkowe, wartość została prawdopodobnie zakodowana dwukrotnie. Zdekoduj ją dwa razy, aby odzyskać oryginał.