查询字符串转 JSON 转换器
在你的浏览器中,将 URL 查询字符串转换为美观的 JSON,再反向转换回去。你的参数都留在你的设备上。
查询字符串转 JSON 转换器在你的浏览器本地解析和构建一切。你粘贴的查询字符串、URL 和 JSON——包括其中的任何令牌或 ID——绝不会离开你的设备,也不会上传到 ArrayKit。
打开 JSON 格式化工具以整理结果
关于 查询字符串转 JSON
查询字符串转 JSON 转换器会把一个 URL 查询字符串变成整洁、易读的 JSON,并把 JSON 直接转换回查询字符串。粘贴一段原始查询——带或不带开头的问号,或一整个 URL——它会解码百分号编码的值,把像 ids=1&ids=2 这样的重复键归并为数组,并把 filter[status]=active 这类嵌套方括号键和 filter.status 这类点号键展开为结构化对象。切换方向即可把一个 JSON 对象序列化成编码后的查询字符串,用于链接、API 调用或分析参数。它专为梳理跟踪链接或调试请求参数的开发者、QA 工程师和营销人员而打造。一切都在你的浏览器中解析,因此你粘贴的 URL 和载荷都留在你的设备上,绝不会被上传。
功能特性
- 在你输入时把 URL 查询字符串转换为美观、带缩进的 JSON
- 把一个 JSON 对象序列化回编码后的查询字符串
- 把 a[b]=1 这类嵌套方括号键和 a.b=1 这类点号键展开为对象
- 把 tag=x&tag=y 这类重复键归并为 JSON 数组
- 解码百分号编码的值,并把 + 当作空格
- 接受裸查询字符串、开头的 ? 或一整个 URL
- 复制结果,或将其下载为 .json 或 .txt 文件
- 完全在你的浏览器中运行,因此参数绝不会离开你的设备
如何使用 查询字符串转 JSON
- 保持选中「查询字符串 → JSON」标签页。
- 把一个查询字符串或完整 URL 粘贴到输入框中。
- 查看格式化后的 JSON,然后复制它或将其下载为 .json 文件。
- 切换到「JSON → 查询字符串」,粘贴一个 JSON 对象以构建编码后的查询。
示例
输入
filter[status]=active&ids=1&ids=2&q=hello%20world
输出
{
"filter": {
"status": "active"
},
"ids": [
"1",
"2"
],
"q": "hello world"
}
重复键会变成数组,方括号键会嵌套,而 %20 会解码为一个空格。
常见错误与故障排除
- 整个查询坍缩成一个奇怪的键,名称中还残留着方括号。 — 深度超过五层的嵌套不会被展开;请把键扁平化,或拆分查询,让每个方括号分组都保持在五层以内。
- 「JSON → 查询字符串」提示「Enter a JSON object of key/value pairs.」(请输入一个键值对的 JSON 对象)。 — 顶层必须是一个对象,例如 {"a":"1"}。裸数组、字符串或数字没有参数名,无法据此构建查询。
- 往返一次后,数字和布尔值都变成了字符串。 — 查询字符串只承载文本,因此 2 和 true 会序列化为 "2" 和 "true";解析后请在你自己的代码中把它们转换回正确的类型。
- 值中的一个 + 变成了空格。 — 查询字符串把 + 当作编码后的空格。当你需要保留该字符时,请把字面的加号写作 %2B,然后再转换。
常见问题
- 转换器如何处理像 tag=a&tag=b 这样的重复查询键?
- 重复键会被归并为一个 JSON 数组,因此 tag=a&tag=b 会变成 {"tag":["a","b"]}。当你反向转换时,数组会再次展开为重复键。
- 它能解析像 filter[status]=active 这样的嵌套参数吗?
- 可以。像 filter[status]=active 这样的方括号键和像 filter.status=active 这样的点号键都会展开为嵌套的 JSON 对象,而嵌套对象会序列化回方括号键。
- 为什么转换一个查询字符串后,我的 JSON 值全都是字符串?
- 查询字符串只承载文本,因此每个值都被解析为字符串,包括数字和布尔值。拿到 JSON 后,请在你自己的代码中把它们转换为正确的类型。
- 我该如何把一个 JSON 对象变成查询字符串?
- 切换到「JSON → 查询字符串」标签页并粘贴一个 JSON 对象。嵌套对象会变成方括号键,数组会变成重复键,而值会为你进行百分号编码。
- 它接受完整 URL,还是只接受查询部分?
- 你可以粘贴一整个 URL——? 之前的所有内容以及任何 #片段都会被自动去除——或只粘贴裸查询字符串,带或不带开头的 ? 均可。
- 我转换的 URL 和参数会被保密吗?
- 会的。解析和序列化完全在你的浏览器中进行,因此你粘贴的查询字符串和 JSON 都留在你的设备上,绝不会上传到 ArrayKit。
相关工具
全部 ArrayKit 工具