Koder / dekoder URL

Każdy znak spoza A-Z a-z 0-9 - _ . ~ musi być escapowany procentowo, gdy pojawia się w adresie URL. Przeocz jeden, a przeglądarka wyśle cię w miejsce, którego nie zamierzałeś, albo API odrzuci wywołanie błędem 400. Ten koder obsługuje całe adresy URL albo same wartości parametrów, przełączając między czytelnym tekstem a bezpiecznym formatem transmisji, bez psucia znaków strukturalnych takich jak / czy ?, chyba że o to poprosisz.

Jak zakodować i zdekodować adres URL

  1. 1

    Wklej adres URL albo wartość

    Wprowadź pełny adres URL, ciąg zapytania albo pojedynczy parametr.

  2. 2

    Wybierz poziom kodowania

    Tryb pełnego URL zachowuje `/ : ? #` w nienaruszonej postaci. Tryb komponentu escapuje wszystko zarezerwowane.

  3. 3

    Uruchom konwersję

    Każdy znak jest kodowany w UTF-8, a zarezerwowane bajty są zastępowane znakiem `%HH`.

  4. 4

    Odwróć w razie potrzeby

    To samo narzędzie dekoduje dane escapowane procentowo z powrotem na oryginalne znaki.

encode a encodeComponent

Oba tryby pochodzą z JavaScript i odpowiadają różnym regułom RFC 3986.

Tryb Zachowuje w nienaruszonej postaci Używaj, gdy
Pełny URL (encodeURI) : / ? # [ ] @ ! $ & ' ( ) * + , ; = Masz już strukturalny adres URL
Komponent (encodeURIComponent) Tylko znaki niezarezerwowane Wstawiasz wartość do szablonu

Typowe poprawki, jakie robi to narzędzie

  • Spacje wewnątrz wartości zapytania stają się %20, więc serwer odbiera pojedynczy parametr.
  • Ampersandy wewnątrz wartości stają się %26, więc nie otwierają nowej pary zapytania.
  • Znaki plus wewnątrz wyszukiwanego terminu stają się %2B, więc serwer nie odczyta ich jako spacji.
  • Tekst nie-ASCII taki jak café staje się caf%C3%A9 (UTF-8, dwa bajty).

Pułapka podwójnego kodowania

Jeśli zakodujesz już zakodowany ciąg, dostaniesz bezsens: %20 staje się %2520. Zawsze najpierw dekoduj, gdy nie masz pewności, skąd pochodzą dane. Narzędzie ostrzega, gdy wykryje sekwencje procentowe w danych przed kodowaniem.

Najczęściej zadawane pytania

Tak, gdy wybierzesz tryb form-URL. Ścisły tryb RFC 3986 pozostawia + jako dosłowny plus, bo tylko %20 jest kanoniczną spacją w URI.

Tak. Tryb pełnego URL koduje tylko znaki, które nie są prawidłową strukturą URI, więc poprawny adres URL przechodzi bez zmian, podczas gdy spacje i znaki nie-ASCII wewnątrz wartości i tak są escapowane.

UTF-8, zgodnie z RFC 3986 i specyfikacją URL WHATWG. Starsze kodowania, jak ISO-8859-1, nie są obsługiwane.

Nie. Kodowanie działa lokalnie w twojej przeglądarce, nic nie jest wysyłane ani przechowywane.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach