我需要在JSON文档上写一个属性,这个属性是一个URL
这是我的代码:
String url = "http://localhost:1028/accumulate";
JSONObject cabecera = new JSONObject();
cabecera.put("reference", url);
但是当我创建JSON时,这个属性就是以这种方式编写的:
"reference":"http:\/\/localhost:1028\/accumulate",
因此,接收JSON字符串的服务,它发送错误信息:
<subscribeContextResponse>
<subscribeError>
<errorCode>
<code>400</code>
<reasonPhrase>Bad Request</reasonPhrase>
<details>JSON Parse Error: <unspecified file>(1): invalid escape sequence</details>
</errorCode>
</subscribeError>
</subscribeContextResponse>
写URL的正确方法是什么?
提前致谢
答案 0 :(得分:5)
但是当我创建JSON时,这个属性就是以这种方式编写的:
"reference":"http:\/\/localhost:1028\/accumulate",
没关系,反斜杠是无害的,无论你使用什么来序列化为JSON都只是有点过分了。上面表示的字符串根本不包含反斜杠,只是斜杠。 JSON字符串中的\/
与/
完全相同,我们可以从http://json.org突出显示的规则中看到:
(&#34; solidus&#34;是斜线的奇特术语)