SpringBoot接收form-data和x-www-form-urlencoded数据的方法

 更新时间:2024年05月22日 09:51:28   作者:程序员橙子  
form-data和x-www-form-urlencoded是两种不同的HTTP请求体格式,本文主要介绍了SpringBoot接收form-data和x-www-form-urlencoded数据的方法,具有一定的参考价值,感兴趣的可以了解一下

基础入门

form-data和x-www-form-urlencoded是两种不同的HTTP请求体格式。

  • form-data是一种多部分表单数据格式,常用于文件上传和包含二进制数据的表单提交。在form-data中,每个字段都有一个唯一的标识符,可以携带键值对、文件和其他类型的数据。
  • x-www-form-urlencoded是一种编码格式,常用于包含简单字段(如字符串)的表单提交。在x-www-form-urlencoded中,数据以URL编码格式传输,每个键值对之间用&符号分隔。

在HTML中,form元素的enctype属性用于指定请求体的格式。默认情况下,enctype为application/x-www-form-urlencoded,可以通过设置enctype="multipart/form-data"来使用form-data格式。

案例学习

form-data

  • 传参案例:通过HTTP请求的body以multipart/form-data的格式传输数据。
  • 后端接收方式(示例为Spring Boot)
@RestController
@RequestMapping("/test")
public class DemoController {

    @PostMapping("/createUser")
    public String createUser(@RequestParam("name") String name, @RequestParam("age") int age) {
        // 处理逻辑
        System.out.println("name:" + name);
        System.out.println("age:" + age);
        // ...
        return "Success";
    }

}

Postman测试

在这里插入图片描述

form-data的请求是在body中,为key=value格式,同时可以传文件,Content-Type为multipart/form-data,后端可以用@RequestParam接收

在这里插入图片描述

form-data是一种HTTP请求中传输数据的方式,通常用于上传文件或者发送复杂的请求。数据会以multipart/form-data的格式进行编码,通过HTTP请求的body传输。

在这里插入图片描述

x-www-form-urlencoded

  • 传参案例:通过HTTP请求的body以key-value形式传输数据。
  • 后端接收方式(示例为Spring Boot)
@RestController
@RequestMapping("/test")
public class DemoController {

    @PostMapping("/createUser")
    public String createUser(@RequestParam("name") String name, @RequestParam("age") int age) {
        // 处理逻辑
        System.out.println("name:" + name);
        System.out.println("age:" + age);
        // ...
        return "Success";
    }

}

注意这里的body有变化

在这里插入图片描述

发送成功后,后台接收到入参请求

在这里插入图片描述

通常情况下,当需要上传文件时应该使用form-data方式,而只传输文本数据时可以使用x-www-form-urlencoded方式。

到此这篇关于SpringBoot接收form-data和x-www-form-urlencoded数据的方法的文章就介绍到这了,更多相关SpringBoot接收form-data和x-www-form-urlencoded内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java file.delete删除文件失败,Windows磁盘出现无法访问的文件问题

    Java file.delete删除文件失败,Windows磁盘出现无法访问的文件问题

    这篇文章主要介绍了Java file.delete删除文件失败,Windows磁盘出现无法访问的文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • java中 Set与Map排序输出到Writer详解及实例

    java中 Set与Map排序输出到Writer详解及实例

    这篇文章主要介绍了 java中 Set与Map排序输出到Writer详解及实例的相关资料,需要的朋友可以参考下
    2017-03-03
  • Spring Cloud OAuth2 实现用户认证及单点登录的示例代码

    Spring Cloud OAuth2 实现用户认证及单点登录的示例代码

    这篇文章主要介绍了Spring Cloud OAuth2 实现用户认证及单点登录的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • springboot实现异步任务

    springboot实现异步任务

    这篇文章主要为大家详细介绍了springboot实现异步任务,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Java 函数式编程要点总结

    Java 函数式编程要点总结

    函数式编程并不是Java新提出的概念,其与指令编程相比,强调函数的计算比指令的计算更重要;与过程化编程相比,其中函数的计算可以随时调用。Java8新引入函数式编程方式,大大的提高了编码效率。本文将对涉及的对象等进行统一的学习及记录。
    2021-06-06
  • JAVA SFTP文件上传、下载及批量下载实例

    JAVA SFTP文件上传、下载及批量下载实例

    本篇文章主要介绍了JAVA SFTP文件上传、下载及批量下载实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • Java擦除和转换实例分析

    Java擦除和转换实例分析

    这篇文章主要介绍了Java擦除和转换,结合实例形式分析了java擦除和转换概念、功能及相关操作技巧,需要的朋友可以参考下
    2019-07-07
  • Java判断对象是否为空(包括null ,

    Java判断对象是否为空(包括null ,"")的方法

    这篇文章主要介绍了Java判断对象是否为空(包括null ,"")的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • SpringBoot的配置文件application.yml及加载顺序详解

    SpringBoot的配置文件application.yml及加载顺序详解

    这篇文章主要介绍了SpringBoot的配置文件application.yml及加载顺序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Springboot引入hibernate配置自动建表并进行增删改查操作

    Springboot引入hibernate配置自动建表并进行增删改查操作

    这篇文章主要介绍了Springboot引入hibernate配置自动建表并进行增删改查,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09

最新评论