接口参照

news/2025/11/14 9:41:15/文章来源:https://www.cnblogs.com/doerken/p/19220513

总览

image

1.查询参数(Query Parameters)

1.1 前端请求(URL 拼接)

GET /api/users?page=1&size=10&keyword=张三
  • 参数直接拼在 URL ? 后面
  • 多个参数用 & 连接
  • 适用于 GET 请求(也可用于 POST,但不推荐)

1.2 后端接收方式(@RequestParam)

@GetMapping("/users")
public List<User> getUsers(@RequestParam(defaultValue = "1") int page,@RequestParam(defaultValue = "10") int size,@RequestParam(required = false) String keyword
) {// ...
}

1.3 适用场景

  • 分页查询
  • 搜索过滤
  • 简单配置类参数

1.4 注意

  • 不适合传敏感数据(会被日志记录)
  • URL 长度有限制(一般 < 2048 字符

2.路径参数(Path Variable)

2.1 前端请求(URL 路径中嵌入)

GET /api/users/123
DELETE /api/orders/ORD20251114
  • 参数作为 URL 路径的一部分
  • 通常表示“资源 ID”

2.2 后端接收方式(@PathVariable)

@GetMapping("/users/{id}")
public User getUserById(@PathVariable Long id) {return userService.findById(id);
}@DeleteMapping("/orders/{orderNo}")
public void deleteOrder(@PathVariable String orderNo) {orderService.delete(orderNo);
}

2.3 适用场景

  • 获取/删除/更新某个具体资源
  • RESTful 风格 API

2.4 注意

  • 路径参数不能省略(除非用正则或可选路径,但复杂)
  • 类型需匹配(如 Long 对应数字字符串

3.表单数据(Form Data / x-www-form-urlencoded)

3.1 前端请求(body 为 key=value&...)

POST /api/login
Content-Type: application/x-www-form-urlencodedusername=admin&password=123456

数据在请求体(body)中

  • 格式类似 URL 查询字符串
  • 浏览器原生
    默认提交格式

3.2 后端接收方式(@RequestParam)

@PostMapping("/login")
public Result<?> login(@RequestParam String username,@RequestParam String password
) {// ...
}

3.3 适用场景

  • 传统表单登录
  • 简单数据提交(无嵌套结构)

3.4 注意

  • 不支持复杂对象(如 { user: { name: "a" } })
  • Spring 会自动解析 x-www-form-urlencoded 到 @RequestParam

4.JSON 数据(Request Body)

4.1 前端请求(body 为 JSON)

POST /api/orders
Content-Type: application/json{"goodsId": 1001,"count": 2,"address": {"province": "广东","city": "深圳"}
}
  • 最常见的现代 API 交互方式
  • 支持嵌套对象、数组等复杂结构

4.2 后端接收方式(@RequestBody + DTO)

@PostMapping("/orders")
public Result<?> createOrder(@RequestBody CreateOrderRequest req) {// req.getGoodsId(), req.getAddress()...
}// DTO 类
public class CreateOrderRequest {private Long goodsId;private Integer count;private Address address;// getter/setter
}

4.3 适用场景

  • 创建/更新复杂资源(如订单、用户资料)
  • 前后端分离项目(Vue/React + Spring Boot)
  • 微信支付、下单等业务接口

4.4 注意

  • 必须设置 Content-Type: application/json
  • 字段名需前后端一致(可用 @JsonProperty 映射)
  • 推荐加 @Valid 做参数校验

5.文件上传(Multipart Form Data)

5.1 前端请求模样(multipart/form-data)

POST /api/upload/avatar
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="userId"123
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="avatar.jpg"
Content-Type: image/jpeg(二进制文件内容...)
------WebKitFormBoundary7MA4YWxkTrZu0gW--

5.2 后端接收方式(@RequestParam MultipartFile)

@PostMapping("/upload/avatar")
public Result<?> uploadAvatar(@RequestParam Long userId,@RequestParam MultipartFile file
) {// 保存文件...
}

5.3 适用场景

  • 头像上传
  • 附件提交
  • 富文本编辑器图片上传

5.4注意

  • 不能用 @RequestBody
  • 需配置文件大小限制(spring.servlet.multipart.max-file-size)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/965053.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RustFS 重要变更,让容器化部署更安全

随着 RustFS 的持续走热,越来越多的用户开始关注并使用 RustFS,而且在整个过程中提出了很多关键问题。其中在 Start the container using a non-root user #804 中,whg517 用户提出,从安全最佳实践角度出发,RustF…

AI元人文:价值原语化的五维关系调和框架

AI元人文:价值原语化的五维关系调和框架 ——两间双果一资源 在价值冲突日益复杂的元时代,AI元人文的核心突破在于通过"价值原语化"将抽象价值降解为具体行为单元,并运用五个根本追问调和其相互关系:时序…

双赢思维

你提出的这个观点非常深刻,这是一种高水平的“双赢思维”,核心不是去强迫别人,而是设计一个机制,让对方的最佳选择恰好也是你希望看到的结果。这就像给系统装上一个“自动导航”,让它自然地驶向你想要的方向。 除…

Windows 11 系统对磁盘进行分区保姆级教程

具体步骤1. 右击桌面任务栏中的“开始”, 选择磁盘管理 2. 磁盘管理界面如下 3. 选中要压缩的卷,比如D盘,选中之后颜色稍有变化,右键, 点击“压缩卷” 4. 在弹出来的小窗口中,输入压缩空间量,这里选择300G,点击…

2025年口碑好的风冷一体化加热器厂家实力及用户口碑排行榜

2025年口碑好的风冷一体化加热器厂家实力及用户口碑排行榜行业背景与市场趋势随着工业4.0时代的深入发展,风冷一体化加热器作为工业加热领域的关键设备,市场需求持续增长。据《2024-2025中国工业加热设备市场研究报告…

2025年知名的节能加热圈厂家最新TOP排行榜

2025年知名的节能加热圈厂家最新TOP排行榜行业背景与市场趋势随着全球能源危机加剧和环保法规日益严格,节能加热设备行业迎来了前所未有的发展机遇。据《2024-2025全球工业加热设备市场报告》显示,节能加热圈市场规模…

vscode python2代码debug

一、背景 python2代码需要debug,vscode中安装python插件后debug闪屏后退出,无法debug。原因为 vscode在2022年停止对python插件python2的支持。如果需要使用,需要把python回退到v2021.12版本 二、安装旧版本 切换到…

2025年知名的远红外节能加热圈厂家推荐及采购指南

2025年知名的远红外节能加热圈厂家推荐及采购指南行业背景与市场趋势远红外节能加热技术作为工业加热领域的重要创新,近年来在全球范围内获得了快速发展。根据《2024-2029全球远红外加热技术市场报告》显示,2023年全…

2025年评价高的膜浓缩设备厂家选购指南与推荐

2025年评价高的膜浓缩设备厂家选购指南与推荐行业背景与市场趋势膜浓缩技术作为现代分离工艺的核心环节,在食品饮料、生物制药、化工环保等领域发挥着不可替代的作用。根据中国膜工业协会2024年度报告显示,全球膜浓缩…

2025年热门的废水处理液体分离设备TOP实力厂家推荐榜

2025年热门的废水处理液体分离设备TOP实力厂家推荐榜行业背景与市场趋势随着全球环保法规日益严格和工业废水排放标准不断提高,液体分离设备市场正迎来快速增长期。据MarketsandMarkets最新研究报告显示,2024年全球水…

【URP】Unity[后处理]晕影Vignette

晕影(Vignette)是Unity URP后处理中的一种视觉效果,主要用于模拟摄影中图像边缘变暗或去饱和的现象。它通过将观众注意力引导至画面中心来增强视觉焦点,常见于电影、游戏等场景中。 发展历史【从UnityURP开始探索游戏…

2025年知名的酶制剂浓缩设备最新TOP厂家排名

2025年知名的酶制剂浓缩设备最新TOP厂家排名 行业背景与市场趋势 酶制剂作为生物技术产业的核心产品之一,广泛应用于食品、医药、饲料、纺织、环保等多个领域。随着全球生物经济的快速发展,酶制剂市场需求持续增长…

2025年比较好的板材超声波探伤厂家最新推荐排行榜

2025年比较好的板材超声波探伤厂家最新推荐排行榜行业背景与市场趋势随着工业4.0时代的深入发展,超声波探伤技术作为无损检测的重要手段,在板材制造领域发挥着越来越关键的作用。根据《2024-2029年中国无损检测设备行…

cad批量转换pdf格式真的简单!这4个小技巧快收藏

几十个CAD图纸文件需要转成PDF格式,却只能一个个打开、一个个打印、一个个保存?不仅耗时耗力,还容易出错、漏转! 今天,我就来分享4个超实用的CAD批量转PDF方法,让你真正实现一键批量导出!赶紧接着往下看~ 01 Br…

2025年靠谱的螺旋风管厂家最新权威推荐排行榜

2025年靠谱的螺旋风管厂家最新权威推荐排行榜行业背景与市场趋势随着我国建筑行业的持续发展和环保要求的不断提高,螺旋风管作为通风系统的重要组成部分,市场需求呈现稳定增长态势。据中国通风设备行业协会最新统计数…

2025 年 11 月干燥机厂家推荐排行榜,离心喷雾干燥机,压力喷雾干燥机,气流干燥机,振动流化床干燥机,旋转闪蒸干燥机,回转滚筒干燥机公司推荐

2025年11月干燥机厂家推荐排行榜:离心喷雾、压力喷雾、气流、振动流化床、旋转闪蒸、回转滚筒干燥机权威指南 行业背景与发展趋势 干燥设备作为工业生产中的关键环节,在化工、制药、食品、矿产等领域发挥着不可替代的…

ARM MPU内存保护单元 - ENGINEER

ARM MPU内存保护单元ARM MPU(Memory Protection Unit)是ARM处理器中的一个重要特性,它提供了内存保护和访问控制的功能,通常用于实现操作系统的内存隔离和保护。MPU能够增强系统的健壮性,防止非法访问,保护关键数…

2025年热门的镀锌风管厂家最新用户好评榜

2025年热门的镀锌风管厂家最新用户好评榜行业背景与市场趋势随着建筑行业的持续发展和消防安全的日益重视,镀锌风管作为通风系统的重要组成部分,市场需求呈现稳定增长态势。据中国通风设备行业协会最新数据显示,202…

mybatis ResultHandler 对结果集批处理

mybatis ResultHandler使用 业务代码public void exportUserStudyCardUsageRecords(UserStudyCardUsageRecordParam po, Long startCreateTime, Long closeCreateTime, Consumer<UserStudyCardUsageRecordPo> co…

从 .NET Core1.0 到 .NET 10:.NET + C# 演进全景

从 .NET Core1.0 到 .NET 10:.NET + C# 演进全景本文回顾微软 .NET 与 C# 语言从跨平台起步到统一平台、再到现代化性能优化的全过程。每个版本都配有简明 Demo 代码,便于开发者快速掌握特性变化与实践。一、.NET Co…