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 删除,实现资源状态的转移。

相关推荐
万少6 小时前
用腻了 WorkBuddy 的默认界面?这个开源小工具给它换上了毛玻璃
前端·javascript·后端
皮皮林5518 小时前
代码越“整洁”,性能越“拉胯”?
后端
金金金__9 小时前
一篇文章带你入门OpenSpec
后端
阿维的博客日记9 小时前
MultipartFile 是不是表示仅仅是一个分片?
java·后端·spring·multipartfile
海上彼尚10 小时前
Nodejs也能写Agent - 16.LangGraph篇 - 条件分支与循环
前端·后端·langchain·node.js
Dovis(誓平步青云)11 小时前
远程办公软件文件传输实测:6 款工具的速度、稳定性和办公体验对比
linux·运维·服务器·后端·生成对抗网络
凌虚12 小时前
AI 时代,程序员会消失吗?
人工智能·后端·程序员
用户83562907805113 小时前
使用 Python 在 Excel 中添加和自定义文本框
后端·python
干到60岁退休的码农13 小时前
SpringMVC实现Restful api请求方法
后端·restful