【问题标题】:How to use quotation marks in java REST如何在 java REST 中使用引号
【发布时间】:2012-04-29 11:41:15
【问题描述】:
我知道在 java 中,当你希望在字符串中使用引号时,你应该这样做:private String quotationMarks = "\"";
在 eclipse 中工作时一切都很好——但事情是这样的:我有一个返回字符串的方法——里面有引号;当我通过 REST (curl) 调用此方法时,我也看到了反斜杠。假设我的方法返回了以下字符串:what a good "day" - 然后当我通过 curl 调用此方法时 - 我得到 what a great \"day\" 这对我不利。
为什么会这样?如何避免返回这个反斜杠?
【问题讨论】:
标签:
java
string
rest
escaping
【解决方案1】:
由于 JSON 中的键值在格式中是双引号 {"text":"what a good day"}。因此,如果 value 中已经有一个带引号的字符串,那么您正在使用的 json 构建器库将自动在双引号之前添加转义字符。
例如。在你的情况下
{"text":"多么美好的 \"day\""} - 有效的 json
{"text":"what a good "day""} - 无效的 json
你可以在JSONLint检查你的json的有效性