原文地址: http://blog.csdn.net/u012201619/article/details/75156707
做接口的拦截器时,需在拦截器中通过response返回接口是否允许调用的JSON信息:
response.setCharacterEncoding("UTF-8");
response.setContentType("application/json; charset=utf-8");
PrintWriter out = null ;
try{
JSONObject res = new JSONObject();
res.put("success","false");
res.put("msg","xxxx");
out = response.getWriter();
out.append(res.toString());
return false;
}
catch (Excepton e){
e.printStackTrace();
response.sendError(500);
return false;
}
需要导入的依赖
http://mvnrepository.com/artifact/org.json/json
http://mvnrepository.com/artifact/org.json/json/20171018
另一片类似的文章
原文:http://blog.csdn.net/a379850992/article/details/54582760
怎么在SpringMvc拦截器或者request中取得前端传递过来的Json数据
public String readJSONString(HttpServletRequest request){
StringBuffer json = new StringBuffer();
String line = null;
try {
BufferedReader reader = request.getReader();
while((line = reader.readLine()) != null) {
json.append(line);
}
}
catch(Exception e) {
System.out.println(e.toString());
}
return json.toString();
}
}
之后 再转成 jsonObject 对象。就可以取到值了
还有一点 要注意 编码格式.
给前端返回值可用response.getWriter().write("此处为内容");
request.getParameter()、 request.getInputStream()、request.getReader()这三种方法是有冲突的,因为流只能被读一次。