URL / URI Tools

Конструктор URL-запросовКаждый повторяющийся параметр остаётся на своём месте

Каждый повторяющийся параметр остаётся на своём месте

Конструктор URL-запросов

Ввод

Данные обрабатываются в этом браузере и не отправляются на сервер.

Результаты

Параметры

Явно выберите запрос, URL или JSON. Первый # начинает фрагмент; URL сохраняет основу и фрагмент без обращения к адресу.

Объект JSON группирует значения и теряет чередование ключей и отличия флагов. Целочисленные имена могут менять порядок. Для точных параметров выбирайте entries.

Максимум 100000 единиц UTF-16 и 1000 записей. Созданные экспорты не обрезаются. Каждый формат вывода ограничен 1200000 единиц UTF-16; превышение отклоняет преобразование без обрезки.

Таблица параметров

Изменения таблицы остаются черновиком до применения. Без = значение пустое, ключ непустой. Проверьте замену перед применением или отбрасыванием.

Введите данные или загрузите пример.

Конструктор URL-запросов преобразует URL, JSON или текст запроса в редактируемые строки. Параметры URL с одинаковыми именами, пустые значения и отличие flag от flag= сохраняются.

Строка запроса может использовать кодирование формы или RFC3986. Преобразование Query String в JSON оставляет длинные идентификаторы и начальные нули текстом.

Зачем использовать Конструктор URL-запросов?

Сохранить полную последовательность

Конструктор URL-запросов экспортирует массив entries с key, value и hasEquals. Он сохраняет чередующиеся повторные ключи и флаги без знака равенства, которые теряются при группировке в объект.

Три соединённые пары становятся тремя строками в том же порядке.

Упорядочить без перестановки повторов

Проверьте стабильную сортировку декодированных ключей перед применением. Значения одинаковых ключей сохраняют порядок; отмена восстанавливает ввод и результат.

Четыре строки группируются по форме ключа с сохранением порядка повторных значений.

Прочитать, изменить и собрать

01

Выберите режим ввода

Явно выберите запрос, URL или JSON. В запросе допустим начальный ?, а первый # начинает фрагмент. Режим URL сохраняет исходную основу и фрагмент без обращения к адресу.

02

Проверьте пробелы

По умолчанию + во вводе означает пробел, а форма записывает пробелы как +. Буквальный + на входе и RFC3986 с %20 на выходе выбираются отдельно. Автоматика ждёт 350 мс; без неё используйте кнопку или Ctrl/Cmd + Enter.

03

Примените после просмотра

Изменяйте, добавляйте, удаляйте и сортируйте строки, затем проверьте замену и примените. Устаревший результат нельзя экспортировать. Отмена восстанавливает ввод, настройки и результат.

Одна таблица, несколько форматов

Повторы отдельными строками

Каждое вхождение остаётся строкой. hasEquals отличает debug от debug= без преобразования в логический тип.

Два вида JSON

entries сохраняет всю последовательность. Объект JSON группирует повторяющиеся значения в массивы строк, если порядок между ключами не важен.

Запрос и полный URL

Имена и значения кодируются отдельно. Символы & и = внутри значения остаются данными; URL сохраняет основу и фрагмент.

Полный экспорт

Копируйте выбранный результат, скачивайте текст или отчёт JSON. Даже слишком большой для обратной записи результат экспортируется целиком.

Синтаксис и ограничения

Явные разделители
Пары разделяет только &, пустые участки игнорируются. Разбиение происходит по первому =. Первый # начинает фрагмент; ? после # в URL не начинает запрос.
Строгое декодирование
Ошибочные последовательности %, UTF-8 и одиночные суррогаты отклоняются. В URL/запросе запрещены сырые C0/DEL; допустимы процентное кодирование и правильные управляющие escape-последовательности JSON.
Текстовые значения JSON
Принимаются entries или объект строк/массивов строк. Повторные ключи объекта, вложенность, числа, логические значения и null отклоняются. Пустой массив даёт ноль записей; целочисленные имена могут следовать порядку свойств JavaScript.
Флаги без равенства
Запись содержит key, value и hasEquals. Без = значение должно быть пустым, а ключ непустым. Пустому ключу нужен hasEquals=true. Экспорт объекта теряет различие флагов и чередование ключей.
Сортировка и переносы
Стабильная сортировка сравнивает декодированные ключи по единицам UTF-16. Редактирование поля может нормализовать CRLF; нетронутые значения сохраняются. Перекодирование не является канонизацией подписи API.
Размер данных
Не более 100000 единиц UTF-16 и 1000 записей на входе. Выход не обрезается. Каноническую замену длиннее 100000 единиц нельзя применить, но можно экспортировать. Каждый формат вывода ограничен 1200000 единиц UTF-16; превышение отклоняет преобразование без обрезки.

Вопросы про Конструктор URL-запросов

Повторяющиеся ключи собираются в массив?

В объектном JSON — да. В таблице и entries каждое вхождение остаётся отдельным элементом с исходным порядком.

Как кодируются пробелы?

Форма использует +, RFC3986 — %20. Буквальный плюс записывается как %2B; интерпретация входного плюса выбирается отдельно.

Почему числа остаются строками?

Параметры запроса являются текстом. Числа, логические значения и null в JSON не принимаются: заключайте значения в кавычки, чтобы сохранить цифры и нули.

Можно разобрать полный URL?

Да, выберите режим URL. Основа и фрагмент остаются без изменений, адрес не запрашивается. entries описывает только параметры.

Сохраняется ли исходный порядок?

Да, пока вы не примените сортировку. Равные ключи остаются стабильными. Для точной передачи порядка используйте entries, а не группированный объект.

Нашли проблему?

Конструктор URL-запросов

Откройте пример в Конструктор URL-запросов, проверьте повторы и флаги, затем скопируйте формат, который ожидает ваше приложение.