当前位置: 首页 > news >正文

java springmvc/springboot 项目通过HttpServletRequest对象获取请求体body工具类

请求

在这里插入图片描述

测试接口

在这里插入图片描述

获取到的

获取到打印出的json字符串里有空格这些,在json解析的时候正常解析为json对象了。
在这里插入图片描述

工具类代码


import lombok.extern.slf4j.Slf4j;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;import javax.servlet.http.HttpServletRequest;
import java.io.BufferedReader;/*** @author humorchen* date: 2024/2/27* description: 请求工具**/
@Slf4j
public class RequestUtil {/*** 获取当前请求** @return*/public static HttpServletRequest getCurrentRequest() {ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();if (requestAttributes != null) {return requestAttributes.getRequest();}return null;}/*** 获取请求body** @param request* @return*/public static String getRequestBody(HttpServletRequest request) {// 获取request这个请求的请求body字符串StringBuilder stringBuilder = new StringBuilder();BufferedReader bufferedReader = null;try {bufferedReader = request.getReader();String line;while ((line = bufferedReader.readLine()) != null) {stringBuilder.append(line);}} catch (Exception e) {log.error("获取请求body异常:" + e.getMessage());} finally {if (bufferedReader != null) {try {bufferedReader.close();} catch (Exception e) {log.error("关闭bufferedReader异常:" + e.getMessage());}}}return stringBuilder.toString();}
}

blog验证标记:var code = “ceeb1e72-291b-4697-8a0b-50c3c4e098f2”

http://www.lryc.cn/news/307807.html

相关文章:

  • 新手怎么使用github?
  • CSS_实现三角形和聊天气泡框
  • VPX基于全国产飞腾FT-2000+/64核+复旦微FPGA的计算刀片
  • ifcplusplus 示例 函数中英文 对照分析
  • 天一个数据分析题(一百七十三)
  • 尚硅谷(SpringCloudAlibaba微服务分布式)学习代码Eureka部分
  • arm服务器上部署kibana
  • Redis之二:Redis 常用命令
  • npm 镜像源切换与设置
  • 【HDFS】Decommision(退役) EC数据节点剩最后几个块卡住的问题
  • MySQL知识点归纳总结(一)
  • SocketWeb实现小小聊天室
  • 如何在启用Secure Boot的Ubuntu 22.04电脑中安装使用VirtualBox 6.1
  • 基于B/S+MySQL+Tomcat开发的旅游信息管理系统
  • mac m3安装nvm安装说明;mac安装xbrew
  • 【小沐学QT】QT学习之Web控件的使用
  • word embedding
  • 原码,反码,补码
  • 科技赋能,MTW400A为农村饮水安全打通“最后一公里”
  • 测试计划、测试方案、测试策略、测试用例的区别
  • c# 异常处理
  • (delphi11最新学习资料) Object Pascal 学习笔记---第6章第3节(传递字符串作为参数)
  • k8s节点负载使用情况分析命令kubectl describe node [node-name]
  • 自动驾驶加速落地,激光雷达放量可期(上)
  • 变量的间接引用
  • 学习JAVA的第六天(基础)
  • LeetCode 2673.使二叉树所有路径值相等的最小代价:自顶向下的DFS 或 自底向上的递推
  • 9、电源管理入门之CPU Idle
  • uniapp的扩展组件uni-popup 弹出层自动打开
  • 二、mysql常用函数