RESTful 接口 + 实际开发通用规范

文章目录

下面这份是RESTful 接口 + 实际开发通用规范,直接照着用就行,清晰不踩坑。

接口方法与参数使用速查表

1. GET(查询、获取资源)

用途 :获取列表、详情、搜索、分页
允许参数

  • ✅ Path 参数(必须)
  • ✅ Query 参数(筛选、分页、排序)
  • ✅ Header 参数(token、版本)
  • ❌ 禁止 Body 参数(很多服务器/框架不支持)
  • ❌ 禁止敏感参数(密码、密钥)

示例

复制代码
GET /users/123
GET /orders?status=paid&page=1&size=10

2. POST(新增资源、提交表单)

用途 :创建、注册、登录、提交数据
允许参数

  • ✅ Path 参数(可选)
  • ✅ Query 参数(少量附加参数)
  • ✅ Body 参数(主要数据放这里
  • ✅ Header 参数
  • ✅ Form-data / x-www-form-urlencoded

示例

复制代码
POST /users
Body: { name, phone, password }

3. PUT(全量更新资源)

用途 :替换整个资源(覆盖更新)
允许参数

  • ✅ Path 参数(必须,指定要更新的资源 ID)
  • ✅ Query 参数(极少用)
  • ✅ Body 参数(完整更新数据)
  • ✅ Header

示例

复制代码
PUT /users/123
Body: { name: "新名字", age: 25 }

4. PATCH(局部更新资源)

用途 :只改某几个字段(如改昵称、改状态)
允许参数

  • ✅ Path 参数(必须
  • ✅ Body 参数(只传要改的字段)
  • ✅ Header

示例

复制代码
PATCH /users/123
Body: { nickname: "新昵称" }

5. DELETE(删除资源)

用途 :删除单个/批量资源
允许参数

  • ✅ Path 参数(必须,删谁)
  • ✅ Query 参数(可选附加条件)
  • ✅ Header
  • ❌ 尽量不要 Body(规范不推荐)

示例

复制代码
DELETE /users/123

极简记忆版(面试/写代码直接背)

  • GET:Path + Query
  • POST:Path + Body(主)
  • PUT:Path + Body(全量)
  • PATCH:Path + Body(局部)
  • DELETE:Path(为主)

安全与规范小规则

  1. 密码、token、密钥 → 一律放 Header 或 Body,绝不放 URL
  2. 文件上传 → 必须 POST + form-data
  3. 列表查询 → 只用 Query
  4. 操作某个具体资源 → 必须用 Path 带 ID
  5. GET 永远不修改数据,只查询
相关推荐
还是大剑师兰特1 小时前
地图的分类
大剑师·地图分类
Patrick在香港6 天前
Python 分析香港 AQHI 归档 1644 天:同一天的空气,早上 8 点报 3,下午 5 点报 10
开发语言·python·数据分析·api·restful·数据可视化·开放数据
逐米时代7 天前
AR加知识库提升一次修复率
后端·restful
还是大剑师兰特11 天前
ruoyi‑vue3 添加【车辆管理】菜单组完整方案
大剑师·若依系统
还是大剑师兰特14 天前
若依(ruoyi)前后台系统从零到一部署配置(坑点带解析)
大剑师
还是大剑师兰特15 天前
ideaIC‑2024.1.7(社区版zip绿色解压版)完整使用教程
大剑师·idealc
王的宝库16 天前
【无标题】
笔记·restful
还是大剑师兰特17 天前
MySQL8.0 Windows完整安装教程
windows·mysql·大剑师
大雷神21 天前
HarmonyOS AR Engine 物体形状实战:把实体书识别为 RECTANGLE,再放进地面 AR 盒子
ar·restful·harmonyos
Patrick_Wilson21 天前
RPC 与 REST 的本质区别看这一篇就够了:别再只看 URL 里有没有动词
http·rpc·restful