JSON转查询参数 - 在线将JSON数据转换为URL查询字符串
什么是JSON转查询参数工具?
JSON转查询参数是一款在线转换工具,能够将结构化的JSON数据转换为URL查询字符串(Query String)格式,同时也支持反向转换。适用于分享带筛选条件的链接、API调试、表单数据序列化等场景,支持中文编码和嵌套对象处理。
你是否遇到过分享筛选结果页给朋友,对方打开后筛选条件全没了?或者需要把API的JSON参数转为URL查询字符串?这个工具就像一个"翻译官",帮你在结构化数据和URL格式之间自由转换。
查询字符串的核心概念
URL查询字符串是URL中"?"后面的部分,用于向服务器传递参数:
- 基本格式:key1=value1&key2=value2,多个参数用&连接
- 编码规则:中文和特殊字符需要URL编码,如空格变为%20或+
- 数组表示:同一key多次出现或使用方括号,如ids=1&ids=2或ids[]=1
- 嵌套对象:使用点号或方括号表示层级,如user.name=张三
查询字符串是HTTP协议中最基础的参数传递方式,GET请求、分享链接、API调用等都离不开它。
支持的转换模式
JSON转查询字符串
将JSON对象转为key=value格式,支持URL编码和嵌套展开
查询字符串转JSON
将URL查询参数解析为结构化的JSON对象,自动解码中文
编码选项
可选择是否对中文和特殊字符进行URL编码,确保链接兼容性
使用步骤
- 在输入框中粘贴JSON数据或查询字符串
- 选择转换方向:JSON转查询字符串 或 查询字符串转JSON
- 按需开启URL编码选项(中文和特殊字符建议开启)
- 点击"转换"按钮,结果实时显示在输出框中
- 点击"复制"按钮,将结果粘贴到需要的地方
典型应用场景
- 分享筛选结果:将筛选条件转为查询字符串,生成可分享的链接
- API调试:将JSON格式的请求参数转为URL查询参数,方便测试GET接口
- 表单数据序列化:将表单的JSON数据转为查询字符串提交
- 链接参数解析:从URL中提取查询参数,转为JSON格式分析
- 数据迁移:在不同数据格式之间转换,适配不同系统的接口要求
技术实现
JSON转查询字符串的核心是递归遍历JSON对象的所有键值对,将嵌套结构展平为点号分隔的键名。例如 {"user":{"name":"张三"}} 转换为 user.name=张三。
反向转换则通过解析查询字符串中的&和=分隔符,将点号键名还原为嵌套的JSON结构。URL编码/解码使用浏览器内置的encodeURIComponent和decodeURIComponent函数,确保中文字符正确处理。
常见问题
嵌套的JSON对象怎么转换?
嵌套对象会使用点号分隔键名来表示层级关系。例如 {"a":{"b":"c"}} 会转换为 a.b=c。也支持方括号表示法,如 a[b]=c。
数组怎么处理?
数组会使用方括号加索引的方式表示。例如 {"ids":[1,2,3]} 会转换为 ids[0]=1&ids[1]=2&ids[2]=3。也可以选择重复键名方式:ids=1&ids=2&ids=3。
中文需要URL编码吗?
建议编码。URL中直接包含中文在某些浏览器和服务器上可能出现乱码。开启URL编码后,中文会被转换为%XX格式,确保在任何环境下都能正确传递。
转换结果有长度限制吗?
工具本身没有长度限制,但URL查询字符串在实际使用中受浏览器和服务器限制。大多数浏览器支持至少2000个字符,服务器端限制各不相同。数据量大时建议使用POST请求。
支持哪些JSON格式?
支持标准JSON对象格式,包括嵌套对象、数组和各种值类型(字符串、数字、布尔值、null)。不支持JSON数组作为顶层结构(必须包裹在对象中)。
数据安全吗?
安全。所有转换在浏览器本地完成,JSON数据和查询字符串都不会上传到服务器。你的数据始终在你的设备上处理。