初级程序员必备的十大技能之 API 接口与前后端联调(二)

简介: 教程来源 https://vrhyh.cn/ RESTful API 是基于资源的标准化接口设计风格,强调名词化URI、HTTP方法语义化(GET/POST/PUT/PATCH/DELETE)、无状态通信与统一响应格式,提升可读性、可维护性与前后端协作效率。

三、RESTful API 设计规范

REST(Representational State Transfer,表述性状态转移)是目前最主流的 API 设计风格。

3.1 RESTful 核心原则
image.png
3.2 RESTful API 设计示例

# 用户资源

# 获取用户列表
GET /api/v1/users?page=1&limit=20

# 获取单个用户
GET /api/v1/users/123

# 创建用户
POST /api/v1/users
Content-Type: application/json

{
  "username": "zhangsan",
  "email": "zs@example.com"
}

# 完整更新用户
PUT /api/v1/users/123
{
  "username": "zhangsan_new",
  "email": "zs_new@example.com"
}

# 部分更新用户
PATCH /api/v1/users/123
{
  "email": "newemail@example.com"
}

# 删除用户
DELETE /api/v1/users/123

# 获取用户的订单列表(子资源)
GET /api/v1/users/123/orders

# 创建用户的订单
POST /api/v1/users/123/orders
{
  "productId": 456,
  "quantity": 2
}

3.3 统一的响应格式
在实际项目中,通常会定义统一的响应结构:

// 成功响应
{
  "code": 200,
  "message": "success",
  "data": {
    // 实际数据
  },
  "timestamp": 1705305600000
}

// 列表响应(带分页)
{
  "code": 200,
  "message": "success",
  "data": {
    "items": [...],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 100,
      "pages": 5
    }
  }
}

// 错误响应
{
  "code": 400,
  "message": "用户名已存在",
  "errors": [
    {
      "field": "username",
      "message": "用户名已被注册"
    }
  ],
  "timestamp": 1705305600000
}

3.4 命名规范

// ✅ 好的命名
GET  /api/v1/users           // 用户列表
GET  /api/v1/users/123       // 单个用户
POST /api/v1/users           // 创建用户
PUT  /api/v1/users/123       // 更新用户

// ✅ 状态/动作可以用 query 参数
GET  /api/v1/orders?status=paid

// ✅ 特殊操作可以用冒号表示
POST /api/v1/orders/123:cancel   // 取消订单
POST /api/v1/users/123:activate  // 激活用户

// ❌ 不好的命名
GET  /api/v1/getAllUsers
GET  /api/v1/getUserById?id=123
POST /api/v1/insertUser
POST /api/v1/user/create

来源:
https://bgnno.cn/

相关文章
|
1月前
|
XML 前端开发 程序员
初级程序员必备的十大技能之 API 接口与前后端联调(一)
教程来源 http://qeext.cn/ 本文系统讲解API设计规范(RESTful/GraphQL)、HTTP协议核心(方法、状态码、头信息)、前后端联调流程及调试工具,助你打造标准化、高可用接口,打破前后端协作孤岛。
|
4月前
|
达摩院 运维 Linux
RISC-V 基金会 Data Center SIG 第七次会议圆满结束,研讨硬件加速机制
围绕“为何需要 TG、要做哪些规范工作、如何证明可行(PoC)以及如何组织生态协作”等关键点展开讨论。
|
29天前
|
人工智能 前端开发 JavaScript
浏览器自动化的下一层:为什么 CloakBrowser 把指纹问题推到了源码层?
CloakBrowser 是一款基于 Chromium 源码级改造的反检测浏览器工具,通过 C++ 层补丁修复 Canvas、WebGL、字体、GPU、WebRTC 等指纹特征,并模拟真实用户行为,提升自动化环境可信度。它不绕验证码,而是从根源降低被风控识别概率,适用于测试开发、AI Agent 及合规爬虫场景。
|
30天前
|
人工智能 Java API
多端CRM客户关系管理系统源码下载(PHP/Java/Python)完整开源版
本文深度解析PHP、Java、Python三大技术栈的开源CRM方案,涵盖多端协同架构、RBAC权限控制、客户公海回收、RESTful API设计及AI智能化演进,助成长型企业以低成本实现私有化、可定制、高扩展的CRM自主建设。
|
29天前
|
人工智能 API
阿里云百炼Coding Plan售罄抢不到如何解决?共4种方法,总有一种适合你!
阿里云百炼Coding Plan因Lite版停售、Pro版每日9:30限量补货(200元/月),常显示“售罄”。本文提供4种实用解法:①卡点抢购Pro版;②选用Token Plan按量计费;③购买AI通用节省计划享5折;④开通百炼免费领7000万Tokens。阿里云tokens优惠活动:https://t.aliyun.com/U/OTnSAH
497 8
|
29天前
|
人工智能 监控 测试技术
AI 测试用例审核 Skill:把用例评审从“凭经验”变成“可评分”
本文介绍一种AI驱动的测试用例审核Skill,将资深测试负责人的评审经验封装为可复用、可量化、可批量执行的标准能力。它能自动检查逻辑完整性、预期明确性、前置条件、PRD覆盖度及边界异常,逐条评分、定位问题、给出修改建议,助力团队提升用例质量、统一评审标准、加速新人成长。
|
29天前
|
前端开发 JavaScript 程序员
初级程序员必备的十大技能之开发工具熟练使用(三)
教程来源 https://bncne.cn/ 浏览器开发者工具是前端调试核心利器,涵盖Elements(实时编辑DOM/CSS)、Console(日志、断点、DOM操作)、Sources(多类型断点与作用域调试)、Network(请求分析与模拟)、Performance(性能指标与火焰图)及Application(存储管理)六大面板,全面提升开发效率。
|
30天前
|
存储 人工智能 缓存
长上下文大模型的企业成本治理:从调用链到预算控制
Claude 1M 长上下文、Claude Code、MCP、Agent workflow 的讨论升温后,企业侧的关注点正在从“模型能力是否足够强”转向“能不能稳定、合规、可控地跑在业务里”。
140 2
|
29天前
|
前端开发 程序员 开发工具
初级程序员必备的十大技能之开发工具熟练使用(四)
教程来源 https://tmywi.cn/ VS Code深度集成Git:快捷键操作、冲突可视化解决;GitLens增强代码溯源与历史追踪;配合高效命令行别名与撤销技巧;辅以Node/前端多维调试方案,全面提升开发效能。
|
29天前
|
程序员 Shell 持续交付
初级程序员必备的十大技能之开发工具熟练使用(二)
教程来源 https://zlpow.cn/ 命令行是程序员高效开发的“第二语言”:涵盖文件操作、进程管理、网络诊断、管道重定向、Shell脚本及终端增强工具,助你快速定位问题、批量处理任务、自动化部署,全面提升系统操控力与生产力。