news 2026/2/2 17:40:49

7 RESTful 规范

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
7 RESTful 规范

7 RESTful 规范

RESTful 规范是目前企业开发中主流的 API 设计风格(几乎所有互联网项目都会用),核心是 “用 HTTP 协议的特性来定义接口的语义”—— 简单说就是 “通过 URL 表示资源,通过 HTTP 方法表示对资源的操作”。

7.1 RESTful 的核心规则

RESTful 规范的核心是 **“资源”+“操作” 分离 **:
  • 资源:用 URL 表示(比如 “购物车项” 是资源,URL 写成/cart/items);
  • 操作:用 HTTP 方法表示(比如 “查、增、删” 对应 GET/POST/DELETE)。
  1. 规则 1:URL 表示 “资源”,不用动词
❌ 非 RESTful(URL 里带 “操作动词”):
/getCartItems // 查购物车 /addCartItem // 加购物车 /deleteCartItem // 删购物车项

✅ RESTful 写法(URL 只写资源,用 HTTP 方法表示操作):

GET /cart/items → 查购物车项(比如:对应controller的`getCartItems`方法) POST /cart/items → 加购物车项(比如:对应controller的`addItemToCart`方法) DELETE /cart/items/{itemId} → 删购物车项(比如:对应controller的`removeItemFromCart`方法)
/cart/items是 “购物车项” 这个资源,HTTP 方法决定是 “查、增、删”。
  1. 规则 2:用 HTTP 方法表示 “操作”
RESTful 中 HTTP 方法的对应关系,比如:
HTTP 方法
操作
你的接口示例
作用
GET
查(读)
@GetMapping("/cart/items")
获取购物车列表
POST
增(创建)
@PostMapping("/cart/items")
新增购物车项
DELETE
删(删除)
@DeleteMapping("/cart/items/{itemId}")
删除指定购物车项
PUT
改(全量更新)
@PutMapping("/cart/items/{itemId}")
更新购物车项数量
  1. 规则 3:用路径参数表示 “单个资源”
比如删除 “某个购物车项” 的接口:
@DeleteMapping("/cart/items/{itemId}") public Result<Void> removeItemFromCart(@PathVariable Long itemId) { ... }
  • URL 中的{itemId}是 “路径参数”,表示 “单个购物车项资源”;
  • 对应 RESTful 的 “操作单个资源” 语义(比如/cart/items/123就是 “ID 为 123 的购物车项”)。

7.2 在企业中的应用

现在几乎所有企业级项目(尤其是前后端分离、微服务项目)都采用 RESTful 规范,原因是:
  1. 接口语义清晰:看 URL 和 HTTP 方法就知道是 “操作什么资源、做什么事”,比如DELETE /cart/items/123,不用看文档就知道是 “删除 ID 为 123 的购物车项”;
  2. 前后端协作高效:前端开发者不用记 “接口叫什么名字”,只需要按 “资源 + 方法” 的逻辑调用;
  3. 兼容各种框架 / 工具:Swagger、Postman 等工具都对 RESTful 接口有友好支持,自动生成文档、调试更方便;
  4. 易扩展:比如后续要加 “修改购物车项”,直接用PUT /cart/items/{itemId},接口风格统一,维护成本低。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/25 1:07:16

黑苹果配置宝典:3大核心技巧解决90%兼容性问题

还在为黑苹果的兼容性问题头疼吗&#xff1f;显卡驱动失败、音频输出无声、USB端口识别异常&#xff0c;这些看似复杂的难题其实都有标准化的解决方案。今天分享的Hackintool配置指南&#xff0c;将帮你快速搞定这些烦人的问题。 【免费下载链接】Hackintool The Swiss army kn…

作者头像 李华
网站建设 2026/1/29 19:10:13

SPHBM4来了|窄接口HBM4的妥协与突破

当AI算力竞赛进入白热化阶段,作为性能瓶颈的内存技术正迎来关键迭代。JEDEC近期即将定稿的SPHBM4标准,试图用512位窄接口实现HBM4级别的带宽表现,同时通过兼容传统有机基板降低成本、提升容量——这一方案被不少人视为HBM阵营向主流市场扩张的信号。但真相是,SPHBM4并非旨在…

作者头像 李华
网站建设 2026/1/27 19:14:54

2025年内容创作者在用的8款高效工具盘点

每年都有新工具承诺要"彻底改变"我们的内容创作方式&#xff0c;但哪些工具真正融入了日常工作&#xff1f;我们调研了600多位内容领域从业者&#xff0c;这7款工具脱颖而出关键原因在于&#xff1a;不同行业和工作流程的内容创作者都在持续使用它们。以下是这些工具…

作者头像 李华
网站建设 2026/1/28 15:58:30

Transformer layer共享策略优化Qwen-Image-Edit-2509显存占用

Transformer Layer共享策略优化Qwen-Image-Edit-2509显存占用 在当前多模态大模型加速落地的背景下&#xff0c;图像编辑AI正从“能用”迈向“好用、快用、低成本用”的新阶段。以通义千问系列中的 Qwen-Image-Edit-2509 为例&#xff0c;这款专为细粒度图文指令驱动设计的专业…

作者头像 李华
网站建设 2026/1/25 1:30:04

Ice:专业级macOS菜单栏管理工具,重塑桌面工作效率

Ice&#xff1a;专业级macOS菜单栏管理工具&#xff0c;重塑桌面工作效率 【免费下载链接】Ice Powerful menu bar manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ice/Ice 在当今信息过载的工作环境中&#xff0c;macOS用户常常面临菜单栏图标堆积如…

作者头像 李华
网站建设 2026/1/31 5:30:24

Joy-Con Toolkit:打造个性化游戏控制器体验

Joy-Con Toolkit&#xff1a;打造个性化游戏控制器体验 【免费下载链接】jc_toolkit Joy-Con Toolkit 项目地址: https://gitcode.com/gh_mirrors/jc/jc_toolkit Joy-Con Toolkit是一款专为游戏控制器设计的开源工具&#xff0c;能够帮助你深度定制手柄的各种参数&#…

作者头像 李华