Без качване, 100% локално, без акаунт

URL кодиране/декодиране

Кодирай специалните символи в URL или декодирай percent-кодирани низове. Всичко остава в браузъра.

Как работи URL кодиране/декодиране

Кодиращият и декодиращият инструмент за URL конвертира низове в и от процентно кодиране (известно още като URL кодиране), формата, изискван от RFC 3986 за безопасно включване на специални символи в URL адреси. Поставете необработен низ, за да го кодирате, или поставете процентно кодиран низ, за да го декодирате обратно в четима за хора форма. Конвертирането се изпълнява изцяло в браузъра, използвайки JavaScript функциите encodeURIComponent и decodeURIComponent; нищо, което въведете, не напуска устройството ви.

URL кодирането е от значение всеки път, когато изграждате параметри на заявки, URI за пренасочване или канонични връзки програмно. Интервалът става %20, амперсандът %26, хеш знакът %23 и така нататък. Кодирането се прилага и за интернационализирани имена на домейни и не-ASCII символи в сегменти на пътеки. Инструментът предлага и режим encodeURI за кодиране на пълни URI, запазвайки структурни символи като '/', '?' и '#'.

Как да използвате URL кодиране/декодиране, стъпка по стъпка

  1. Поставете текста, който искате да кодирате или декодирате, в областта за въвеждане.
  2. Изберете „Кодиране“ за процентно кодиране на текста или „Декодиране“ за обратно кодиране.
  3. Изберете режим 'encodeURIComponent' за стойности на параметри на заявки или режим 'encodeURI' за пълни URI.
  4. Копирайте резултата от изходната зона.

Често срещани приложения

  • Разработчик, изграждащ URL за пренасочване при търсене, трябва да кодира с проценти низа за заявка, за да не могат специалните символи да счупят структурата на URL.
  • API интегратор получава процентно кодиран URL за обратно извикване в полезен товар на webhook и трябва да го декодира, за да провери целевия адрес.
  • Редактор на съдържание копира URL, съдържащ символи с ударение, от браузъра и трябва да го кодира за използване в Markdown връзка.
  • QA инженер тества крайна точка за валидиране на вход, кодирайки гранични символи като '<', '>' и '&' преди изпращането им.

Често задавани въпроси

Каква е разликата между encodeURIComponent и encodeURI?

encodeURIComponent кодира всичко освен букви, цифри и символите - _ . ! ~ * ' ( ). Той е предназначен за кодиране на отделни компоненти като стойности на параметри на заявки. encodeURI оставя структурните URI символи (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) некодирани, тъй като приема, че входът е пълен URI. Използвайте encodeURIComponent за стойности, encodeURI за цели URL адреси.

Предава ли се текстът, поставен тук, на сървър?

Не. Кодирането и декодирането извикват вградените функции encodeURIComponent и decodeURIComponent на JavaScript, работещи изцяло в JavaScript двигателя на браузъра. Нищо, което въведете тук, не се изпраща никъде.

Защо интервалът понякога става '+' вместо '%20'?

Нотацията '+' за интервали идва от по-стария формат application/x-www-form-urlencoded, използван при изпращане на HTML формуляри, което е различно от процентното кодиране по RFC 3986. Инструментът използва стриктно процентно кодиране по RFC 3986, така че интервалите стават %20. Ако целевата система очаква '+' за интервали, ще трябва ръчно да замените %20 с '+' след кодирането.

Мога ли да кодирам пълен URL адрес, включително низа за заявка, наведнъж?

Да, като използвате режим 'encodeURI'. Този режим запазва '/', '?', '=', '&', '#' и другите URL структурни символи, като в същото време кодира не-ASCII и запазени символи, появяващи се в сегменти или стойности на параметри. Използвайте 'encodeURIComponent' само за отделни стойности на параметри, а не за пълния URL.

Обработва ли инструментът Unicode символи и емоджи?

Да. encodeURIComponent на JavaScript първо конвертира символа в UTF-8 байтова последователност, след което процентно кодира всеки байт. Емоджи като палец нагоре се кодира в многобайтова последователност като %F0%9F%91%8D. Декодирането обръща правилно процеса.