工做中遇到这样的场景:json
在过滤器中对请求中的参数进行一些检查,若是不合法,直接经过response对象将自定义的异常对象以json格式相应给请求端:app
自定义的异常对象以下:post
ExceptionBody body = new ExceptionBody();
body.setCode(2);
body.setMsg("params is error!")
经过response对象响应:对象
response.setStatus(HttpStatus.OK.value());
response.setContentType("application/json;charset=UTF-8");
response.getOutputStream().write(JSONObject.toJSONBytes(body, SerializerFeature.QuoteFieldNames));
return;
经过如上代码过滤器就可已将用户自定义的信息以json格式响应给请求端了……get
在此扩展一下,将post请求的数据解析成jsonObject(com.alibaba.fastjson.JSONObject):it
int length = request.getContentLength(); byte[] bytesBody = new byte[length]; request.getInputStream().read(bytesBody, 0, length); JSONObject jsonObject = JSONObject.parseObject(new String(bytesBody)); String sign = jsonObject.getString("sign");