HttpServletRequest获取body && 使用 @RequestBody 获取body

2023-05-16

直接从HttpServletRequest的Reader流中获取请求body参数

	@RequestMapping(value = "/nty=", method = RequestMethod.POST)
    public JSONObject ForwardNtyMsg(HttpServletRequest request) throws IOException {
        // 直接从HttpServletRequest的Reader流中获取RequestBody
        BufferedReader reader = request.getReader();
        StringBuilder builder = new StringBuilder();
        String line = reader.readLine();
        while(line != null){
            builder.append(line);
            line = reader.readLine();
        }
        reader.close();

        String reqBody = builder.toString();
        System.out.println("recv json data:" + reqBody);

        // string 2 jsonobject
        JSONObject json = JSONObject.parseObject(reqBody);
        
        System.out.println("recv ntydel from:" + request.getRequestURI());
        
		// todo..

        // return
        JSONObject retjson = new JSONObject();
        retjson.put("recv", "success");
        return retjson;
    }

使用 @RequestBody 获取body

	@RequestMapping(value = "/nty", method = RequestMethod.POST)
    public JSONObject ForwardNtyMsg(@RequestBody JSONObject jsonString, HttpServletRequest httpServletRequest) {
        System.out.println("recv nty json data:" + jsonString.toJSONString());

        System.out.println("recv nty from:" + httpServletRequest.getRequestURI());
        
		// todo..
		
        // return
        JSONObject json = new JSONObject();
        json.put("recv", "success");
        return json;
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HttpServletRequest获取body && 使用 @RequestBody 获取body 的相关文章

随机推荐

  • Docx4J替换内容时,内容换行失败问题解决

    WordprocessingMLPackage wordMLPackage 61 WordprocessingMLPackage load new java io File templatePath MainDocumentPart doc
  • C语言经典例题-用4×4矩阵显示从1到16的所有整数,并计算每行、每列和每条对角线上的和

    编写一个程序 xff0c 要求用户 按任意次序 xff09 输入从1到16的所有整数 xff0c 然后用4 4矩阵的形式将它们显示出来 再计算出每行 每列和每条对角线上的和 include lt stdio h gt int main in
  • java中Map.hashCode()函数说明

    在java中 xff0c Map hashCode 函数是在具有一定工作积累后 xff0c 为了更好的成长不可避免需要研究的内容 首先 xff0c 我们先看下原始代码 xff1a static final int hash Object k
  • 不支持的特性: getMetaData,问题解决

    最近使用springboot 43 mybatis 时遇到 xff1a 不支持的特性 getMetaData 的异常 使用 xff1a 64 Options useGeneratedKeys 61 false 解决的该问题 xff1b 官方
  • jsp四种范围

    page代表是与一个页面相关的对象和属性 request代表是与 Web 客户机发出一个请求相关的对象和属性 session代表是与用于某个 Web 客户机的一个用户体验相关的对象和属性 application代表是与整个 Web 应用程序
  • Kotlin-17-等号比较(== 、===)

    目录 1 Java中的 61 61 2 Java中的 equals 3 两者的区别 3 对于基本数据类型的 61 61 比较 4 Kotlin中的 61 61 与 61 61 61 1 Java中的 61 61 Java中的 61 61 直
  • Kotlin-30-继承多个父类

    目录 1 Java中的继承 2 Kotlin中的继承 1 Java中的继承 Java中的类只能继承一个父类 xff0c 是无法实现继承多个父类 xff0c 但是一个类可以实现多个接口 Java中的接口是无法给函数添加函数体的 abstrac
  • 算法-9-快速排序

    目录 1 描述 2 特点 3 代码实现 3 1 切分函数partition 图示 4 性能 5 快速排序优化 xff08 小数组插入排序 xff09 6 快排优化 xff08 三向切分 xff09 1 描述 快速排序也是基于递归实现的 和归
  • Kotlin进阶-6-重入锁+synchronized+volatile

    目录 1 介绍 2 线程的状态 3 创建线程 4 线程同步 4 1 可重入锁 4 2 不可重入锁的实现 4 3 可重入锁的实现 4 4 Java中的可重入锁 ReentrantLock 4 5 同步方法 synchronized 5 vol
  • Kotlin进阶-7-阻塞队列+线程池

    目录 1 阻塞队列 1 1 常见阻塞场景 2 Java中的阻塞队列 2 1 ArrayBlockingQueue 2 2 LinkedBlockingQueue 2 3 PriorityBlockingQueue 2 4 DelayQueu
  • Kotlin进阶-11-Activity启动后的视图加载分析

    1 介绍 Kotlin进阶 9 setContentView源析 43 Window Activity DecorView关系 Kotlin进阶 10 Activity的启动流程 前面两节分别介绍了Activity的启动流程 xff0c 还
  • Java多线程编程技术总结

    目录 1 退出线程的3种方式 xff1a 1 1 判断线程是否中断 xff1f 1 2 interrupt 1 3 stop 1 4 StackTraceElement getStackTrace 方法 2 suspend 和resume
  • 【Mysql】视图

    Mysql 视图 1 什么是视图 xff08 MySQL 5以及以上版本 xff09 2 视图的优点3 视图的规则与限制4 使用视图附录 1 什么是视图 xff08 MySQL 5以及以上版本 xff09 视图是虚拟的表 与包含数据的表不一
  • AIDL的原理实现

    前言 Binder 驱动是基于 CS 模型设计的跨进程通信驱动 想要使用 Binder 驱动进行通信 需要三个步骤 定义交互规范服务端实现客户端实现 一 定义交互规范 span class token keyword public span
  • 微信小程序9---Button按钮和icon图标

    Button 按钮 首先提醒一下大家 xff0c 如果你现在button标签不能用 xff0c 不用担心 xff0c 那是因为微信小程序存在一个bug xff0c 你仔细看一下你的button标签的代码是不是这样的 span class h
  • 微信小程序10---条件语句if和循环语句for(三目运算+hidden)

    在微信小程序的官方文档中 xff0c 将这两个语句归化在框架的视图层 xff0c 分表叫条件渲染和类表渲染 xff0c 其实他就是封装了这两条语句而已 上图 xff08 循环语句if xff09 1 它是通过在index js中设置数据 x
  • 微信小程序13--通过api接口将json数据展现到小程序上

    实现知乎客户端的一个重要知识前提就是 xff0c 要知道怎么通过知乎新闻的接口 xff0c 来把数据展示到微信小程序端上 那么我们这一就先学习一下 xff0c 如何将接口获取到的数据展示到微信小程序上 1 用到的知识点 lt 1 gt wx
  • 微信小程序15---将组件设置为圆形

    1 上图 2 index wxss 宽高和弧度的设置 span class hljs class circle span span class hljs rules span class hljs rule span class hljs
  • Android---给Linearlayout设置边框+弧度角

    1 第一步需要在drawable下创建一个xml文件 xff0c 代码如下 span class hljs pi lt xml version 61 34 1 0 34 encoding 61 34 utf 8 34 gt span spa
  • HttpServletRequest获取body && 使用 @RequestBody 获取body

    直接从HttpServletRequest的Reader流中获取请求body参数 span class token annotation punctuation 64 RequestMapping span span class token