Як користуватися
- Вставте повну URL-адресу, зокрема https:// або іншу схему.
- Перегляньте таблицю компонентів. За допомогою кнопок копіювання можна скопіювати окрему частину, наприклад ім’я хоста або шлях.
- Перевірте параметри запиту: значення показано в декодованому вигляді, у початковому порядку; параметри з однаковими назвами збережено.
- Змініть, додайте або видаліть параметри, а потім скопіюйте сформовану URL-адресу.
Як це працює
Інструмент використовує вбудований у ваш браузер парсер URL-адрес (стандарт WHATWG URL), тому результат відповідає тому, як браузери обробляють посилання. URL-адреса нормалізується так само: схема й ім’я хоста переводяться в нижній регістр, стандартні порти, як-от 443 для https, вилучаються, а шляхи на кшталт /a/../b приводяться до нормального вигляду.
Серед показаних частин — протокол (схема), ім’я користувача й пароль, якщо URL-адреса містить облікові дані, хост із портом, лише ім’я хоста, порт, шлях, рядок запиту, що починається з ?, фрагмент, що починається з #, і origin (схема, хост і порт), який браузери використовують для перевірок безпеки одного джерела. Пароль приховано, доки ви не натиснете кнопку з оком.
Параметри запиту обробляються за допомогою URLSearchParams. Значення декодуються з відсоткового формату, а + сприймається як пробіл, як у даних HTML-форми. Параметри, що трапляються кілька разів, наприклад size=42&size=43, відображаються окремо й у початковому порядку, оскільки багато серверів обробляють їх як список.
Коли ви редагуєте параметри, рядок запиту також формується за допомогою URLSearchParams. Через це запис незмінених частин може змінитися: пробіл записується як +, а символи на кшталт ' або ~ можуть кодуватися інакше. Для серверів, які обробляють запити у форматі form-encoded, значення залишається тим самим.
Імена хостів із символами поза ASCII (інтернаціоналізовані доменні імена) парсер URL-адрес перетворює на punycode. Наприклад, münchen.de стає xn--mnchen-3ya.de. Інструмент показує обидва варіанти.
Приклади
Перевірка параметрів відстеження
Вставте посилання на кампанію, наприклад https://example.com/?utm_source=newsletter&utm_medium=email&utm_campaign=spring+sale, щоб побачити декодоване значення кожного параметра utm_ («spring sale»). Видаліть непотрібні параметри й скопіюйте чисте посилання.
Перевірка URL-адреси перенаправлення
Посилання для входу містить redirect=https%3A%2F%2Fapp.example.com%2Fdashboard%3Ftab%3D2. У таблиці параметрів показано декодоване значення https://app.example.com/dashboard?tab=2, тож ви можете точно побачити, куди буде перенаправлено користувача.
Пошук origin для CORS
Для https://api.example.com:8443/v1/users?id=7 значення origin — https://api.example.com:8443. Заголовок Access-Control-Allow-Origin має точно збігатися з цим рядком — без шляху й кінцевої скісної риски.
Поширені запитання
Чим відрізняються хост і ім’я хоста?
Ім’я хоста — це лише домен або IP-адреса (example.com). Хост також містить порт, якщо в URL-адресі вказано нестандартний порт (example.com:8443). Для https://example.com:443/ обидва значення — example.com, оскільки 443 є стандартним портом для https і вилучається.
Чому з’являється помилка про відсутню схему URL-адреси?
Без схеми, як-от https://, «example.com/page» не є абсолютною URL-адресою, а «example.com:8080» навіть буде розпізнано як URL-адресу зі схемою «example.com». Інструмент пропонує додати https://.
Чому + відображається як пробіл у значеннях параметрів?
Рядки запиту зазвичай обробляються як дані форми (application/x-www-form-urlencoded), де + означає пробіл. Щоб передати знак плюс, його потрібно записати як %2B. Саме так працюють URLSearchParams і більшість серверних фреймворків.
Що відбувається з параметрами з однаковими назвами?
Усі параметри зберігаються в початковому порядку, кожен — в окремому рядку. Видалення рядка прибирає лише відповідне входження параметра.
Що таке punycode?
DNS підтримує лише імена хостів ASCII, тому інтернаціоналізовані доменні імена кодуються у вигляді міток, що починаються з xn--. Наприклад, bücher.example передається як xn--bcher-kva.example. Зазвичай браузери показують читабельний варіант в адресному рядку.
Конфіденційність
URL обробляється вбудованим парсером URL вашого браузера. За URL не надсилаються запити, а вставлені дані не завантажуються, не зберігаються й не передаються в аналітику.