使用Java在JSON中正确编写URL

时间:2014-12-12 15:42:07

标签: java json string url

我需要在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的正确方法是什么?

提前致谢

1 个答案:

答案 0 :(得分:5)

  

但是当我创建JSON时,这个属性就是以这种方式编写的:

     

"reference":"http:\/\/localhost:1028\/accumulate",

没关系,反斜杠是无害的,无论你使用什么来序列化为JSON都只是有点过分了。上面表示的字符串根本不包含反斜杠,只是斜杠。 JSON字符串中的\//完全相同,我们可以从http://json.org突出显示的规则中看到:

enter image description here

(&#34; solidus&#34;是斜线的奇特术语)