import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@WebServlet("/postReceiver")
public class PostReceiverServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置请求字符编码为UTF-8
request.setCharacterEncoding("UTF-8");
// 读取请求体
StringBuilder requestBody = new StringBuilder();
try (BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(), "UTF-8"))) {
String line;
while ((line = reader.readLine()) != null) {
requestBody.append(line);
}
}
// 输出请求体内容
System.out.println("接收到的POST请求体内容: " + requestBody.toString());
// 响应客户端
response.setContentType("text/plain");
response.setCharacterEncoding("UTF-8");
response.getWriter().write("服务器已接收请求体内容: " + requestBody.toString());
}
}
request.setCharacterEncoding("UTF-8") 确保从请求中读取的数据是正确编码的,避免乱码问题。request.getInputStream() 获取输入流,并使用 BufferedReader 按行读取请求体内容。将读取的内容拼接到 StringBuilder 中,以便后续处理。如果有任何问题或需要进一步的帮助,请随时告诉我!
下一篇:java http post请求
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站