Query String 解析
Query 参数与 JSON 双向转换
JSON 与数据
🔒 100% 本地运行 — 你的数据不会离开当前页面由 Evan 维护•最近更新:2026年9月29日•最近复核:2026年9月29日
页面阅读模式
完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。
工具说明
将查询串转换为 JSON,或将 JSON 对象序列化为查询参数,并逐项查看、复制键值行。编辑后点击“执行转换”。Auto 仅在去掉两端空白后的输入以 { 开头、以 } 结尾时选择 JSON 方向;输入有歧义时请手动选择。查询值保持字符串,非字符串 JSON 值会转成 JSON 文本。输入与方向保存在本地,清空可移除草稿。
场景配方
01
给接受 JSON 文本的接口构建参数
目标:把对象形式的筛选条件编码为单个查询参数。
- 选择 JSON → Query,输入 {"filter":{"status":"open"},"page":2}。
- 点击“执行转换”,得到 filter=%7B%22status%22%3A%22open%22%7D&page=2。
- 确认接收端约定在 filter 中读取 JSON;工具不会把对象展开成方括号参数。
结果:嵌套 JSON 值被序列化为各自的字符串字段。再转回 JSON 时仍是字符串,不会恢复原 JSON 类型。
生产可用片段
重复参数经 JSON 数组转换后并不会原样还原
text
Query → JSON:
tag=api&tag=tools&page=2
{"tag":["api","tools"],"page":"2"}
把该对象执行 JSON → Query:
tag=%5B%22api%22%2C%22tools%22%5D&page=2
数组被编码为一个 JSON 文本值,不会生成两个 tag 字段。推荐工作流
失败门诊(高频踩坑)
整条 URL 被当成参数名的一部分
原因:Query 模式直接读取查询串,只去掉开头的一个 ?,不会从完整 URL 中提取 search 部分。
修复:只粘贴 ? 之后、# 之前的部分;需要查看完整地址时使用 URL 解析器。
常见问题
Query 解析会推断数字、布尔值或嵌套对象吗?
不会。2、true、null 等值仍是字符串,filter[status] 等名称仍是字面键名。同名重复参数会在 JSON 输出中合并为数组。
空格、加号和空字段怎样解码?
按表单规则解码一次:+ 变为空格,%2B 变为加号。flag 和 flag= 的值均为空字符串,允许开头带一个 ?。
无效百分号转义会被拒绝吗?
不一定。URLSearchParams 的解析较宽松,错误转义可能原样保留,或解码为替代字符。此页面没有严格 URI 校验模式。
JSON 顶层接受哪些类型?
必须是 JSON 对象。JSON → Query 模式会拒绝顶层数组、字符串、数字、布尔值和 null。
继续浏览