Utilia

Анализатор на URL

Поставете URL, за да видите протокола, хоста, порта, сегментите на пътя, декодираните параметри и фрагмента, после редактирайте параметрите и пресъздайте URL.

Как да анализирате URL

  1. Поставете URL в URL за анализ. Той се анализира, докато пишете; можете да натиснете и Enter или да щракнете върху Анализирай URL.
  2. Прочетете частите: Протокол, Име на хоста, Порт, Хост (с порт), Произход (origin), Потребителско име, Парола, Път и Фрагмент (#).
  3. Прегледайте списъка Сегменти на пътя и таблицата Параметри на заявката, която показва всеки ключ и стойност декодирани, до Суров текст.
  4. В Редактиране и пресъздаване променете ключ или стойност, щракнете върху Добави параметър или Премахни, или редактирайте фрагмента. Пресъздаден URL се обновява, докато пишете.
  5. Щракнете върху Копирай, за да копирате новия URL.

Ако поставите адрес без схема, като example.com/page, инструментът приема https:// и ви го казва.

Частите на един URL

Инструментът използва вградения в браузъра анализатор на URL, който следва стандарта WHATWG URL, така че вижда адреса точно както го вижда браузърът. Вземете https://ann:secret@shop.example.com:8080/en/products?size=M#reviews:

  • Протокол (https:) е схемата, която казва на браузъра как да изтегли ресурса.
  • Потребителско име и Парола (ann, secret) са незадължителни идентификационни данни. Паролата е маскирана по подразбиране; отметнете Покажи паролата, за да я видите. Браузърите вече премахват или отказват такива данни в линкове и никога не бива да споделяте URL, който съдържа такива.
  • Име на хоста (shop.example.com) е името на сървъра. Интернационализираните домейн имена се показват във формата punycode (xn--…), който използва DNS.
  • Порт (8080) се показва, когато URL го съдържа. Иначе инструментът отбелязва порта по подразбиране за схемата: 80 за http и ws, 443 за https и wss, 21 за ftp. Порт, равен на този по подразбиране, като :443 при https, се отстранява от анализатора.
  • Хост (с порт) обединява двете, а Произход (origin) е схема + хост + порт, единицата, която браузърите използват за правила за сигурност като CORS.
  • Път (/en/products) се разделя на Сегменти на пътя, всеки процентно декодиран, така че caf%C3%A9 се чете café.
  • Фрагмент (#) (reviews) сочи към част от страницата. Той никога не се изпраща към сървъра.

Параметри на заявката

Низът на заявката се разделя по &, а всяка двойка – по първото =. Ключовете и стойностите се декодират така, както HTML формите ги кодират: последователностите %XX стават знаци, а + става интервал. Повтарящите се ключове, обичайни за филтри и полета с множествен избор (size=M&size=L), се запазват всички и се означават „(повтарящ се 1/2)“, „(повтарящ се 2/2)“ по ред. Ключ без = се показва с празна стойност. Когато една последователност не може да се декодира, вместо нея се показва суровият текст.

Редактиране и пресъздаване

Редакторът започва с текущите параметри. Празните редове се пренебрегват. Новият низ на заявката се кодира като при изпращане на форма, както прави URLSearchParams: интервалите стават +, а запазените знаци като &, = или # се кодират процентно, така че една стойност може безопасно да ги съдържа. Това е удобно за премахване на параметри за проследяване, смяна на номер на страница или създаване на тестови линкове. Когато паролата е скрита, тя е маскирана и в полето Пресъздаден URL, но Копирай копира истинския URL.

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

Защо инструментът казва, че URL ми не е валиден?

Най-честите причини са интервали в хоста, порт над 65535, липсващ хост след https:// или знаци, които не са позволени в име на хост. Текст без точка, като една дума, също не се третира като име на хост.

Посещава ли се URL или изпраща ли се някъде?

Не. Адресът се анализира само във вашия браузър. Не се прави заявка към сайта.

Защо %20 стана + в пресъздадения URL?

И двете означават интервал в низ на заявка. Пресъздаването използва кодирането на форми, което произвеждат браузърите и повечето сървърни рамки и което записва интервалите като +.

Работи ли с URL като mailto:, tel: или data:?

Да. Те също се анализират, но нямат хост или порт: съдържанието им се появява в Път.

Каква е разликата между „Хост“ и „Име на хоста“?

Име на хоста е само името. Хост (с порт) добавя порта, когато е зададен изрично, както в example.com:8080.