文章目录
一、RESTful API与HATEOAS基础概念
1.1 REST架构风格的核心约束
REST(Representational State Transfer)是一种软件架构风格,由Roy Fielding博士在其博士论文中提出。它定义了一组架构约束和原则,用于创建可扩展的Web服务。REST架构风格包含六个核心约束:
- 客户端-服务器分离:关注点分离原则,客户端不关心数据存储等细节,服务器不关心用户界面
- 无状态:每个请求包含处理所需的所有信息,服务器不保存客户端上下文
- 可缓存:响应必须明确表明是否可缓存,以提高网络效率
- 统一接口:系统组件通过标准化接口通信,简化架构
- 分层系统:组件不能"看到"与其直接交互层以外的内容
- 按需代码(可选):服务器可以临时扩展或自定义客户端功能
在这些约束中,统一接口又包含四个子原则:
- 资源标识
- 通过表述操作资源
- 自描述消息
- 超媒体作为应用状态引擎(HATEOAS)
1.2 HATEOAS原则详解
HATE