@Override public ServletInputStream getInputStream() throws IOException { if (open) { throw new IllegalStateException("Cannot re-open input stream!"); } open = true; return new ServletInputStream() { private int offset = 0; @Override public boolean isFinished() { return offset >= body.length; } @Override public boolean isReady() { return true; } @Override public void setReadListener(ReadListener listener) { } @Override public int read() throws IOException { if (offset >= body.length) { return -1; } int n = body[offset] & 0xff; offset++; return n; } }; } @Override public BufferedReader getReader() throws IOException { if (open) { throw new IllegalStateException("Cannot re-open reader!"); } open = true; // 原来的代码 // return new BufferedReader(new InputStreamReader(getInputStream(), "UTF-8")); return new BufferedReader(new InputStreamReader(new ByteArrayInputStream(body), "UTF-8")); }
Sign in to make a reply
飞离普