我想创建一个基于REST的Web服务,并使用JSON封装数据。我的问题是,当我在URI中传递字符串版本的JSON时,它会变成如下所示:%7B%22coal%22:100,%22ele%22:1500.1%7D。通过URI传递JSON
我想知道是否有任何函数Java之间转换转义和非转义版本,所以我可以解析字符串。
我想创建一个基于REST的Web服务,并使用JSON封装数据。我的问题是,当我在URI中传递字符串版本的JSON时,它会变成如下所示:%7B%22coal%22:100,%22ele%22:1500.1%7D。通过URI传递JSON
我想知道是否有任何函数Java之间转换转义和非转义版本,所以我可以解析字符串。
您应该在请求正文中发送任何内容。只在URI中发送查询参数。
是的,使用URLEncoder和/或URLDecoder。
那将是URLDecoder。但是除非你做错了什么,否则你不应该使用它,因为Servlet API中的方法一般会返回已经解码过的字符串。
你不应该解码URL转义的文本,Web服务器是由它自己做的,它应该是完全透明的。
正如一些人已经指出使用URLDecode反转义URL字符串
如果你的代码的某些时候,你手动转义JSON字符串这可能是问题作为其得到编码的2倍。
您的参数是平的(没有列表/对象/等)。