Przejdź do treści głównej
FreeOnlineTools Go
Polski
Jak

Jak Kodować i Dekodować URL-e: Kompletny Przewodnik

Autor: FreeOnlineTools Team · Zaktualizowano 2026-08-28

Szybka odpowiedź

Kodowanie URL konwertuje unsafe znaki na sekwencje %XX gdzie XX to hex wartość bajtu. Spacje stają się %20 (lub + w form data), chińskie znaki stają się multi-byte sekwencjami %XX. Użyj naszego darmowego URL Encoder i URL Decoder —całe przetwarzanie lokalnie.

Wstęp

Kodowanie URL, nazywane też percent-encoding, to mechanizm kodowania reserved i unsafe znaków w URL tak, aby URL mógł być bezpiecznie transmitowany przez internet. URLe mogą zawierać tylko ograniczony zestaw znaków ASCII; każdy inny znak (spacje, nie-ASCII litery, symbol) musi być percent-zakodowany jako sekwencja zaczynająca się od % po której następują dwie cyfry hex.

Krok po kroku

  1. Zidentyfikuj, co wymaga kodowania

    Znaki, które nie należą do zestawu niezarezerwowanego (A-Z, a-z, 0-9, -, ., _, ~) muszą być zakodowane procentowo. Obejmuje to spacje, separatory zapytań, takie jak = i &, ukośniki oraz wszystkie znaki spoza zestawu ASCII, takie jak chiński, arabski lub emoji.

  2. Zakoduj URL lub ciąg zapytania

    Wklej tekst do narzędzia kodera URL. Używa encodeURIComponent() do kodowania każdego zarezerwowanego znaku. Wynik pojawia się natychmiast w polu wyjściowym.

  3. Skopiuj zakodowany wynik

    Kliknij przycisk Kopiuj, aby skopiować ciąg zakodowany procentowo. Możesz teraz bezpiecznie osadzić go w parametrze zapytania URL, żądaniu API lub przesłaniu formularza.

  4. Odkoduj zakodowany URL

    Wklej zakodowany URL lub ciąg zapytania do narzędzia dekodera URL. Używa decodeURIComponent() do przywrócenia oryginalnych znaków. Sprawdź, czy zdekodowany wynik odpowiada Twoim oczekiwaniom.

  5. Sprawdź przypadki Edge

    Sprawdź, czy spacje są poprawnie dekodowane (%20 vs +), czy wielobajtowe sekwencje UTF-8 dekodują do właściwego znaku i czy już zakodowane ciągi znaków nie są podwójnie kodowane.

Przykłady

Zakoduj tekst spacją

Wejście: Hello World

Wyjście: Hello%20World

Zakoduj separator ścieżki

Wejście: a/b

Wyjście: a%2Fb

Zakoduj chińskie znaki (UTF-8)

Wejście: 你好

Wyjście: %E4%BD%A0%E5%A5%BD

Dekoduj zakodowany parametr zapytania

Wejście: key%3Dvalue%26foo%3Dbar

Wyjście: key=value&foo=bar

Typowe problemy

  • Podwójne kodowanie: kodowanie już zakodowanego ciągu zamienia %20 w %2520. Przed ponownym kodowaniem zawsze sprawdź, czy dane wejściowe są już zakodowane.
  • Mylenie encodeURI z encodeURIComponent: encodeURI zachowuje zastrzeżone znaki, takie jak /, ?, i nienaruszone dla pełnego URLs, podczas gdy encodeURIComponent koduje wszystko dla wartości parametrów zapytania.
  • Obsługa spacji: %20 to forma zakodowana procentowo; + jest prawidłowe tylko w danych treści aplikacji/x-www-form-urlencoded, a nie w ścieżce URL lub ciągu zapytania zgodnie z RFC 3986.
  • Starsze kodowanie inne niż UTF-8: nowoczesne przeglądarki kodują jako UTF-8, ale starsze systemy mogą używać GBK lub Latin-1, powodując powstawanie mojibake po dekodowaniu po drugiej stronie.

Porady

  • Użyj encodeURIComponent() dla poszczególnych wartości parametrów zapytania i encodeURI() dla całych URLs, które są już poprawnie sformułowane.
  • Tworząc ciągi zapytań, koduj wartość, ale nie separatory = i & — zakoduj każdą wartość osobno, a następnie połącz za pomocą &.
  • Skorzystaj z naszych narzędzi kodera i dekodera URL, aby debugować wywołania API, które zwracają 400 błędów z powodu zniekształconych ciągów zapytań.
  • Zawsze dekoduj po stronie serwera, używając tego samego kodowania znaków (UTF-8), aby uniknąć mojibake.

Powiązane narzędzia

Powiązane przewodniki

Referencje