今天在解析前台EXTJS传过来的表格的值得时候,发现EXT将数据封装到请求的Request Payload中了,如图所示:
后台要想从Request Payload中得到自己想要的数据,就要从流中来获取数据,具体的代码为
private String getStringFromStream(HttpServletRequest req) {
ServletInputStream is;
try {
is = req.getInputStream();
int nRead = 1;
int nTotalRead = 0;
byte[] bytes = new byte[10240];
while (nRead > 0) {
nRead = is.read(bytes, nTotalRead, bytes.length - nTotalRead);
if (nRead > 0)
nTotalRead = nTotalRead + nRead;
}
String str = new String(bytes, 0, nTotalRead, "utf-8");
return str;
} catch (IOException e) {
e.printStackTrace();
return "";
}
}
这就可以解析出来Request payload中的数据了。