我有以下 JSON 字符串,并将其发送到 NodeJS 服务器:
String string = "{\"id\":\"" + userID + "\",\"type\":\"" + methoden + "\",\"msg\":\"" + msget + "\", \"name\":\"" + namnet + "\", \"channel\":\"" + activeChatChannel + "\", \"visitorNick\":\"\", \"agentID\":\" " + agentID + "\"}";
PrintWriter pw = new PrintWriter(new OutputStreamWriter(os, "utf-8"));
pw.println(string);
当字符串 msget
包含字符 "
和 '
在 NodeJS 服务器上,我像这样解析 JSON:
var obj = JSON.parse(message);
有什么想法可以让我毫无问题地发送所有字符吗?
最佳答案
我将使用一个库为您创建 JSON String
。一些选项是:
这将使处理转义变得更加容易。一个示例(使用 org.json
)是:
JSONObject obj = new JSONObject();
obj.put("id", userID);
obj.put("type", methoden);
obj.put("msg", msget);
// etc.
final String json = obj.toString(); // <-- JSON string
关于Java 转义 JSON 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18898773/