spring boot——请求与参数校验——request获取请求体数据示例
代码:
package org.example.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.BufferedReader; import java.io.IOException; import java.util.Enumeration; @RestController public class ParamController { @RequestMapping(value = "/test1") //获取请求行数据 public void test1(HttpServletRequest request) { System.out.println(request.getMethod()); //获取请求方式; System.out.println(request.getContextPath()); //获取虚拟目录 System.out.println(request.getServletPath()); //获取servlet路径 System.out.println(request.getQueryString()); //获取请求参数 System.out.println(request.getRequestURI()); //获取请求URI,部分 System.out.println(request.getRequestURL()); //获取请求URI,全部 } @RequestMapping(value = "/test2") //获取请求头方法一 public void test2(HttpServletRequest request) { System.out.println(request.getHeader("accept")); } @RequestMapping(value = "/test3") //获取请求头方法二 public void test3(HttpServletRequest request) { Enumeration<String> headerNames = request.getHeaderNames(); while (headerNames.hasMoreElements()) //读取请求消息头 { String name = headerNames.nextElement(); String value = request.getHeader(name); System.out.println(name + " "+value); } } @RequestMapping(value = "/test4") //获取请求体数据 public void test4(HttpServletRequest request) throws IOException { BufferedReader rd = request.getReader(); String line = null; while ((line = rd.readLine()) != null) { System.out.println(line); } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程