RESTful 中的状态转移方法

RESTful 核心:资源 + HTTP 方法 = 状态转移

通过不同 HTTP动词对资源进行操作,从而实现资源状态的变化
核心名词解释:幂等性

同一个请求执行一次和执行多次,对服务器资源产生的影响完全相同,不会因为重复请求导致数据异常、资源重复创建/修改。

简单理解:重复调用,结果不变,不会出错


一、常用状态转移方法(HTTP 方法)

  1. GET
  • 查询、获取资源

  • 只读,不修改资源状态

  • 幂等、安全

  1. POST
  • 新建资源(提交数据)

  • 通常用于创建子资源

  • 不幂等

  1. PUT
  • 完整更新资源(整体替换)

  • 也可用于创建(客户端已知 URI)

  • 幂等

  1. PATCH
  • 部分更新资源(只改部分字段)

  • 比 PUT 更轻量

  1. DELETE
  • 删除资源

  • 幂等


二、标准 RESTful 对应(CRUD)

  • C(Create) → POST

  • R(Read) → GET

  • U(Update) → PUT / PATCH

  • D(Delete) → DELETE


三、关键概念

  • 资源(Resource):URI 定位的实体(用户、订单、文章)

  • 表征(Representation):资源的表现形式(JSON/XML)

  • 状态转移(State Transfer)

    通过 HTTP 方法让资源从一种状态变为另一种状态

    例:未存在 → 创建;存在 → 修改;存在 → 删除


四、一句话记忆

用 GET 查询、POST 新增、PUT 全量改、PATCH 部分改、DELETE 删除,实现资源状态的转移。

相关推荐
枕星而眠2 小时前
C 语言结构体硬核总结:内存对齐、#pragma pack、位段、柔性数组(面试+工程双指南)
c语言·后端·面试·柔性数组
spring2997922 小时前
SpringBoot返回文件让前端下载的几种方式
前端·spring boot·后端
武子康2 小时前
大数据-274 Spark MLib-决策树剪枝完全指南:预剪枝与后剪枝原理对比
大数据·后端·spark
SamDeepThinking2 小时前
从DDD的仓储层反向依赖,理解DIP、IOC和DI
java·后端·架构
用户69371750013842 小时前
你每天用的 AI,可能真的被“投毒”了
前端·后端·ai编程
Rust研习社2 小时前
Rust 静态生命周期:从概念到实战避坑
后端·rust·编程语言
殷紫川2 小时前
IDEA Claude Code 插件封神指南:让 AI 成为你的结对编程伙伴
后端·ai编程·intellij idea
chenxu98b2 小时前
SpringBoot Maven 项目 pom 中的 plugin 插件用法整理
spring boot·后端·maven