我正在尝试解析一个 Web 服务,它会为我提供 JSON 数据作为响应。我正在使用 ektorp 将 JSON 数据存储在 couchdb 中。所以我有一个包含 JSON 数据的字符串,例如:
String t = "{\"id\":2834361855,\"name\":\"Деменковa Елена\"}";
然后我将字符串转换为 InputStream 来存储 JSON,就像这样:
InputStream jsonInputStream =
new ByteArrayInputStream(t.getBytes(Charset.forName("UTF-8")));
db.update(String.valueOf(id),
jsonInputStream,
t.length(),
null);
但它引发了一个例外:
400:Bad Request URI: /databs/101 Response Body: { "error" : "bad_request", "reason" : "invalid_json" }
而且我很确定这是一个字符集问题,因为如果我更改字符串,使其不再包含任何俄语字符,例如:
String t = "{\"id\":2834361855,\"name\":\"toto\"}";
然后它工作得很好。我不知道我做错了什么,我尝试了很多事情都没有运气。非常感谢您的帮助,我真的很困惑。