在浏览器中使用尖括号输出JSON

时间:2013-04-05 10:25:18

标签: json browser

目前我正在开发一个小型Web服务,它将JSON输出到客户端。出于测试目的,我在浏览器(Firefox 20)上输出JSON。在JSON中我使用标签来声明不同语言的文本但似乎这会导致一些麻烦,因为我的浏览器会过滤开始标记。

我猜浏览器(我也在Chrome和Opera上试过)认为标签是HTML并尝试处理它。所以我把JSON代码放在CODE-Tags和PRE-Tags中,但结果总是一样。

换句话说,我得到了什么:

"description":"Bild 1<\/de>Image 1<\/en>\u5199\u771f\u7b2c\u4e00<\/jp>"

我想要的是什么:

"description":"<de>Bild 1<\/de><en>Image 1<\/en><jp>\u5199\u771f\u7b2c\u4e00<\/jp>"

重要提示:输出是它必须的(说我的调试器),它就是浏览器显示它的方式。是否有可能让浏览器忽略标签或我必须使用“&amp; lt;”和“&amp; gt;”?谢谢!

2 个答案:

答案 0 :(得分:0)

是的,请尝试使用转义字符XML Escape characters

答案 1 :(得分:0)

转义XML似乎是直接的解决方案,但事实并非如此。它会打破你原来的网络服务。

如果您在回复中发送以下标题,请重新检查:

Content-Type: application/json

上述标题会使浏览器将响应解释为JSON(而不是HTML)