我有一个方法,可以将HttpServletRequest
转换为JSON格式:
public JsonObject requestToJson(HttpServletRequest request){
StringBuffer jb = new StringBuffer();
String line = null;
try {
BufferedReader reader = request.getReader();
while ((line = reader.readLine()) != null)
jb.append(line);
} catch (Exception e) { /*report an error*/ }
return new JsonParser().parse(jb.toString()).getAsJsonObject();
}
问题是如何将请求转换为“UTF-8”编码?
更新:我检查了一下,读取器默认将请求视为“ISO-8859-1”。如何设置参数使读取器将其视为“UTF-8”。
line.getBytes()
将使用平台默认编码,这基本上是一个随机值,取决于你在哪台机器上运行它。 - Christoffer Hammarström