Java将JSONObject转换为URL参数

Java将JSONObject转换为URL参数,java,android,json,url,urlencode,Java,Android,Json,Url,Urlencode,转换为URL参数的优雅方式是什么。 例如,JSONObject: {stat: {123456: {x: 1, y: 2}, 123457: {z: 5, y: 2}}}} 这应该是这样的: stat[123456][x]=1&stat[123456][y]=2&stat[123457][z]=5&stat[123457][y]=2 当然是转义符号,当然JSON对象可能更复杂。。 也许已经有了一些机制 谢谢,如果可读性不是一个大问题,您可以在url中对JSON字符串进

转换为URL参数的优雅方式是什么。 例如,JSONObject:

{stat: {123456: {x: 1, y: 2}, 123457: {z: 5, y: 2}}}}
这应该是这样的:

stat[123456][x]=1&stat[123456][y]=2&stat[123457][z]=5&stat[123457][y]=2
当然是转义符号,当然JSON对象可能更复杂。。 也许已经有了一些机制


谢谢,

如果可读性不是一个大问题,您可以在url中对JSON字符串进行base64编码,然后在解码JSON本身之前在web服务器中进行base64解码。

看起来,这是我找到的唯一手动方式。

您可以改用HTTP POST。我使用的是POST,但是你必须首先传递参数……我认为Marcelo建议你发送实际的JSON作为你的POST数据。使用POST时,不必强制使用
应用程序/x-www-form-urlencoded
格式(即
key=value
),该格式看起来像是任何通用库都不太可能支持的自定义格式。你可能得自己写一个算法。