代码:
protected void processRequest(HttpServletRequest request,
HttpServletResponse response) {
try {
request.setCharacterEncoding("UTF-8");
int size = request.getContentLength();
System.out.println(size);
InputStream is = request.getInputStream();
byte[] reqBodyBytes = readBytes(is, size);
String res = new String(reqBodyBytes);
System.out.println(res);
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.getOutputStream().write(res.getBytes("utf-8"));
response.flushBuffer();
} catch (Exception e) {
}
}
public static final byte[] readBytes(InputStream is, int contentLen) {
if (contentLen > 0) {
int readLen = 0;
int readLengthThisTime = 0;
byte[] message = new byte[contentLen];
try {
while (readLen != contentLen) {
readLengthThisTime = is.read(message, readLen, contentLen
- readLen);
if (readLengthThisTime == -1) {// Should not happen.
break;
}
readLen += readLengthThisTime;
}
return message;
} catch (IOException e) {
// Ignore
// e.printStackTrace();
}
}
return new byte[] {};
}
protected void processRequest(HttpServletRequest request,
HttpServletResponse response) {
try {
request.setCharacterEncoding("UTF-8");
int size = request.getContentLength();
System.out.println(size);
InputStream is = request.getInputStream();
byte[] reqBodyBytes = readBytes(is, size);
String res = new String(reqBodyBytes);
System.out.println(res);
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.getOutputStream().write(res.getBytes("utf-8"));
response.flushBuffer();
} catch (Exception e) {
}
}
public static final byte[] readBytes(InputStream is, int contentLen) {
if (contentLen > 0) {
int readLen = 0;
int readLengthThisTime = 0;
byte[] message = new byte[contentLen];
try {
while (readLen != contentLen) {
readLengthThisTime = is.read(message, readLen, contentLen
- readLen);
if (readLengthThisTime == -1) {// Should not happen.
break;
}
readLen += readLengthThisTime;
}
return message;
} catch (IOException e) {
// Ignore
// e.printStackTrace();
}
}
return new byte[] {};
}