很多开发几年的程序猿有一个习惯,会在接口中打印获取到的参数日志。 而前端或者第三方是json请求的话,获取数据就要从request中的流中获取 而request中的流获取一次就没了 比如:
public String ceshi(HttpServletRequest request){
log.warn("xxx订阅---" + getSubscribeJson(request));
String str = getSubscribeJson(request);
}
这样的话str这个字符串中就是空的
/**
* 从request中获取json
*
* @param request
* @return
*/
public String getSubscribeJson(HttpServletRequest request) {
BufferedReader reader = null;
StringBuilder sb = new StringBuilder();
try {
reader = new BufferedReader(new InputStreamReader(request.getInputStream(), "utf-8"));
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (null != reader) {
reader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}

8209

被折叠的 条评论
为什么被折叠?



