流的形式接参数,Only For Myself !
一般接口相互调用的时候通常都是在方法的括号里面获取传递过来的参数,
例如:
public Map<String, Object> warning(HttpServletRequest request,HttpSession session,HttpServletResponse response,String aaa){}
无论这个aaa是一个json字符串还是一个单独的字符串,等等,
只要接收到都可以进行处理
但是,有的时候你接受不到参数的时候怎么办?
(注:这样的情况参数一般都是一大堆数据封装好的,不是简单的一两个参数的情况)
最近项目里面就碰到了
可以试一下流的方式读取,
public Map<String, Object> warning(HttpServletRequest request,HttpServletResponse response){
String aaa = "";
StringBuffer sb = new StringBuffer();
InputStream is = request.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String s = "";
while((s = br.readLine())!= null){
sb.append(s);
}
aaa = sb.toString();
}
最后这个aaa就是传过来的字符串
然后可以任意的玩弄这个字符串
转json对象
JSONObject objYt = JSONObject.fromObject(aaa);
转json数组
JSONArray jsonArray = JSONArray.fromObject(objYt.get(“bbb”));