티스토리 뷰
private String readRequestBody(HttpServletRequest request) throws IOException {
String mName = "readRequestBody";
String ipaddr = request.getRemoteAddr();
StringBuilder requestBody = new StringBuilder();
try (BufferedReader bufferedReader = request.getReader()) {
String line;
while ((line = bufferedReader.readLine()) != null) {
requestBody.append(line);
}
if(Debug.TRACE) {
Func.log(ipaddr, mName, "request body : ", requestBody.toString());
}
} catch (IOException e) {
if(Debug.TRACE) {
Func.log(ipaddr, mName, "Error reading request body : ", e.getMessage());
}
}
return requestBody.toString();
}
주의점!
req.getReader() 또는 req.getInputStream() lifecycle내 동시에 사용하면 안됨.
request body 한 번만 읽을 수 있음