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

Web后端开发(请求、响应)

目录

请求:

Postman:

简单参数:

实体参数: 

数组集合参数:

日期参数:

Json参数:

路径参数:

响应:


请求响应:

请求:获取请求数据

响应:设置响应数据

BS架构:浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器。

CS架构:客户端/服务器架构模式。(需要下载响应的客户端即软件)

CS(开发、维护麻烦 体验感强)   BS(维护方便 体验一般)

请求:

Postman:

由于前后端分离开发,只写后端代码时POST请求无法对接口进行测试,所以需要安装Postman进行测试

Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。

作用:常用于接口测试 

官网:Postman: The World's Leading API Platform | Sign Up for Free

简单参数:

在服务端传递的普通数据,如GET请求路径后携带的两个参数

 原始方式:

在原始的web程序中,获取请求参数,需要通过HttpServletRequest对象手动获取。(需要手动进行类型转化,比较繁琐,一般不用该方法)

 SpringBoot方式:

   简单参数:参数名与形参变量名相同,定义形参即可接收参数。

在postman中测试结果为:

 而通过POST请求来完成则需要设置请求体:

 只需要请求参数名,和方法中的形参一致即可正常运行(如果不一致能接收成功,但是响应不一致的接收结构为null)

如果方法形参名称与请求参数名称不匹配,可以使用@RequestParam完成映射。

 @RequestMapping("/simpleParam")public String simpleParam(@RequestParam (name="name") String username , Integer age) {System.out.println(username+":"+age);return "OK";}

 

实体参数: 

简单实体对象:请求参数与形参对象属性名相同,定义POJO接收即可(保证请求的参数名与实体类的属性名保持一致)

在Controller同级目录下创建包用来专门存放实体对象

再在写入接口传递Uer对象

  @RequestMapping("/simplePojo")public String simplePojo(User user) {System.out.println(user);return "OK";}

 复杂实体的封装:(如果实体对象中又含有实体对象)

只需要通过某个实体中定义的另一个实体.某个属性来传递即可

数组集合参数:

数组参数:请求参数名与形参数组名称相同且请求参数为多个,定义数组类型形参即可接收参数

如图,逐个传递即可

服务器接收方式:

方式一:定义一个数组来接收

 @RequestMapping("/arrayParam")public String arrayParam(String [] hobby) {System.out.println(Arrays.toString(hobby));return "OK";}

 方式二:使用集合来完成参数的接收 封装

集合参数:请求参数名称与形参集合名称相同且请求参数为多个,@RequestParam 绑定参数关系

与数组的传递方式相同

服务端接收:

  @RequestMapping("/listParam")public String listParam(@RequestParam List<String> hobby) {System.out.println(hobby);return "OK";}

日期参数:

使用@DateTimeFormat注解完成日期参数格式转换

@RequestMapping("/dateParam")public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")LocalDateTime updateTime){System.out.println(updateTime);return "OK";}

Json参数:

JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用@RequestBody标识

JSON参数:JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用@RequestBody标识

  @RequestMapping("/jsonParam")public String jsonParam(@RequestBody User user) {System.out.println(user);return "OK";}

路径参数:

通过请求URL直接传递参数,使用{...}来标识该路径参数,需要使用@PathVariable获取路径参数

 @RequestMapping("/path/{id}")public String pathParam(@PathVariable Integer id) {System.out.println(id);return "OK";}
}

如果需要传递多个路径参数:

 注意:注解中参数名和形参名称需要保持一致

响应:

因为响应的格式很随意,所以我们在开发中为了规范项目会设置统一的响应结果

 在pojo包中创建返回类即可

Springboot项目的静态资源(html、css、js等前端资源)默认存放目录为:classpath:/static

classpath:/public、classpath:/resources

相关文章:

  • 开启二进制日志 MySQL显示关闭,关闭二进制日志 MySQL恢复正常
  • 国防科技大学计算机基础慕课课堂学习笔记
  • 查看进程线程的方法
  • Hibernate Validator 数据验证
  • 曼昆《经济学原理》第九版 第八章税收的成本
  • 持续交付的进化:从DevOps到AI驱动的IT新动能
  • Zustand 第二章(状态处理)
  • BOM(Browser Object Model)核心对象手册
  • Windows设置之网络路由
  • Vue2面试题(一)
  • Java核心技术-卷I-读书笔记(第十二版)
  • 从0开始学习R语言--Day20-ARIMA与格兰杰因果检验
  • OpenJudge | 大整数乘法
  • 热成像实例分割电力设备数据集(3类,838张)
  • CMS内容管理系统的设计与实现:架构设计
  • DeepSeek11-Ollama + Open WebUI 搭建本地 RAG 知识库全流程指南
  • ABP vNext 与 HDFS 数据湖存储集成
  • DiscuzX3.5发帖json api
  • QEMU源码全解析 —— 块设备虚拟化(24)
  • eBPF系列--BCC中提供的BPF maps高级抽象如何映射到内核的BPF maps?
  • 建设网站需要虚拟空间/宁国网络推广
  • 魔客吧是什麼程序做的网站/推广app拿返佣的平台
  • 做页面设计的网站/百度云链接
  • 网站建设合同需要交印花税吗/搜索引擎营销的特点是
  • 网站开发员纵向发展/长沙网络推广只选智投未来
  • 做兼职靠谱的网站有哪些/网络公司网站