Сеть/HTTP
Query String ↔ JSON
Разобрать query-строку URL в JSON-объект или собрать JSON обратно в query-строку.
A URL's query string (the part after ?) is a flat set of key-value pairs, while JSON supports nested structures and data types. This tool converts between the two, including repeated keys and arrays.
How to use it
- Query → JSON: paste a query string (with or without the leading ?) to get a JSON object with decoded parameter values.
- JSON → Query: paste a JSON object to build a query string from it with correctly URL-encoded values.
- Repeated keys (a=1&a=2) are automatically recognized as an array in the JSON output.
Common uses
- Building query parameters from a JSON configuration object for an API request.
- Reading a complex query string with dozens of parameters in a structured, readable form.
- Debugging why a parameter isn't reaching the backend — checking its encoding and structure after conversion.
Things to keep in mind
Every value in a query string is text — "true", "false", or "42" stay strings in the JSON until code explicitly converts them to the right type.
Nested objects and arrays have no single standard query-string notation — different backend frameworks (PHP, Rails, Express) use slightly different syntax (a[b]=1 vs a.b=1).
Статья об этом инструменте: Query String против JSON: почему GET-параметры такие ограниченные
Часто задаваемые вопросы
Как этот инструмент обрабатывает повторяющиеся имена параметров вроде ?tag=a&tag=b?
Повторяющиеся ключи обычно собираются в массив (tag: ["a", "b"]), а не перезаписывают друг друга, что соответствует тому, как большинство бэкенд-фреймворков разбирают строки запроса.
Что происходит со спецсимволами при конвертации?
Символы, закодированные в процентном формате (например, %20 для пробела), декодируются обратно в буквальный вид при конвертации в JSON, и кодируются снова при конвертации JSON обратно в строку запроса.
Отправляется ли мой URL или данные куда-либо для выполнения этой конвертации?
Нет. Конвертация происходит полностью в вашем браузере — ничего не отправляется на сервер.
Какова максимальная длина URL, которую можно безопасно использовать?
Примерно 2000 символов — это самый консервативный общий лимит среди популярных браузеров и серверов. Для больших объёмов данных стоит использовать POST-запрос с телом вместо query string.
Как передать значение true/false или число через query string?
Query string всегда хранит только текст — значения "false" или "42" остаются строками, пока код на сервере или клиенте явно не распознает и не преобразует их в булево значение или число.