Параметры URL в JSON и обратно
Преобразуйте query string, сохраняя повторяющиеся параметры.
Результат
Вставьте данные или выберите пример. После обработки проверьте результат и скачайте файл.
Как пользоваться
JSON со строками и массивами строк либо %-кодированная строка параметров URL.
- Выберите направление преобразования.
- Вставьте параметры URL или JSON со строковыми значениями.
- Создайте результат, проверьте повторы и скачайте JSON или TXT.
Пример
Параметры URL в JSON и обратно
q=Анна+Петрова&tag=книга&tag=новинка
Выберите «Параметры URL в JSON».
{"q":"Анна Петрова","tag":["книга","новинка"]}Форматы и ограничения
Разберите строку запроса без потери повторяющихся параметров или соберите параметры из объекта. Все значения сохраняются как строки; числа, вложенные объекты и пустые массивы не преобразуются по неявным правилам.
- На входе
- Текст UTF-8, JSON
- Результат
- JSON, TXT
JSON со строками и массивами строк либо %-кодированная строка параметров URL.
- Каждое поле — до 200 000 символов; импорт одного файла UTF-8 — до 1 МиБ.
- Вложенность JSON — до 64 уровней, дерево — до 30 000 значений, результат — до 1 000 000 символов.
- Повторяющиеся имена ключей и числа с потерей точности отклоняются. Большие числа передавайте строками.
Передавайте только параметры, без полного адреса и #фрагмента. Группировка повторов по ключу не сохраняет общее чередование разных параметров.
Данные обрабатываются только в вашем браузере и не отправляются серверу. Редактор хранит их в памяти: после обновления страницы ввод, настройки и результат сбрасываются.
Данные обрабатываются только в вашем браузере и не отправляются серверу. Редактор хранит их в памяти: после обновления страницы ввод, настройки и результат сбрасываются. Передавайте только параметры, без полного адреса и #фрагмента. Группировка повторов по ключу не сохраняет общее чередование разных параметров. Каждое поле — до 200 000 символов; импорт одного файла UTF-8 — до 1 МиБ. Вложенность JSON — до 64 уровней, дерево — до 30 000 значений, результат — до 1 000 000 символов. Повторяющиеся имена ключей и числа с потерей точности отклоняются. Большие числа передавайте строками.
Вопросы об инструменте
Что произойдёт с повторяющимся параметром?
Например, tag=a&tag=b превращается в {"tag":["a","b"]}. Значения внутри массива сохраняют порядок.
Можно ли вставить полный URL?
Нет. Вставьте только часть после ?, например q=текст&page=1. Один начальный ? разрешён; адрес сайта и #фрагмент нужно убрать.
Почему знак + становится пробелом?
При разборе query string применяется правило формы URL: + означает пробел. Для буквального плюса используйте %2B. Обратное кодирование записывает пробел как %20.
Превратится ли page=1 в число?
Нет. Все параметры URL — строки. JSON будет содержать "page":"1"; преобразуйте тип отдельно в своей системе.
Какие значения JSON можно кодировать?
Корневой объект может содержать строки или непустые массивы строк. Числа, null, объекты и пустые массивы отклоняются, чтобы не терять смысл.
Сохранится ли точная запись исходной строки параметров?
Нет. Кодирование нормализует escape-последовательности и пробелы, а повторы группируются по ключам. Такой результат нельзя считать точной копией подписанного URL.