问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

简述 RESTful API

创作时间:
作者:
@小白创作中心

简述 RESTful API

引用
1
来源
1.
https://fe.ycy88.com/java/base/11_RESTful

RESTful API全称Resource Representational State Transfer,即资源在网络中以某种形式进行状态转移。它是一种网络应用程序基于HTTP的设计风格。

相关概念

REST API也称为RESTful API,是遵循REST架构规范的应用编程接口(API或Web API),支持与RESTful Web服务进行交互。REST是表述性状态传递的英文缩写,由计算机科学家Roy Fielding创建。

REST原则:

  • 客户端-服务器架构(Client-Server Architecture):客户端和服务器之间的职责要分离。
  • 无状态(Statelessness):服务器不存储客户端的状态信息,每个请求都必须包含理解该请求所需的所有信息。
  • 可缓存性(Cacheability):响应可以被缓存,以减少对服务器的重复请求。
  • 统一接口(Uniform Interface)
  • 资源标识(Resource Identification):每个资源通过URI唯一标识。
  • 资源操作(Resource Manipulation Through Representations):客户端使用资源的表示(如JSON、XML)来操作资源。
  • 自描述消息(Self-descriptive Messages):每个消息(请求或响应)包含足够的信息来描述如何处理消息。
  • 超媒体作为应用状态的引擎(HATEOAS, Hypermedia As The Engine Of Application State):客户端通过超媒体(如链接)来发现和导航资源。

REST实现的核心概念:

  • 资源(Resources):资源是网络上的一个实体或对象,通常通过URI(统一资源标识符)标识。资源的状态可以通过表示来传输。
  • 表示(Representation):表示是资源的具体信息内容,可以是JSON、XML、HTML等。客户端和服务器通过交换资源的表示来进行通信。
  • HTTP方法(HTTP Methods):RESTful服务通常使用HTTP协议的标准方法来操作资源。
  • GET:检索资源。
  • POST:创建资源。
  • PUT:更新资源。
  • DELETE:删除资源。
  • PATCH:部分更新资源。

REST示例

假设有一个简单的RESTful API用于管理用户资源,基于HTTP方法的操作示例如下:

  • GET /users:检索所有用户。
  • GET /users/{id}:检索特定ID的用户。
  • POST /users:创建新用户。
  • PUT /users/{id}:更新特定ID的用户。
  • DELETE /users/{id}:删除特定ID的用户。
请求方式
URL
动作
GET
http://[hostname]/api/users
检索用户列表
GET
http://[hostname]/api/users/[user_id]
检索单个用户
POST
http://[hostname]/api/users
创建新用户
PUT
http://[hostname]/api/users/[user_id]
更新用户信息
DELETE
http://[hostname]/api/users/[user_id]
删除用户

RESTful API接口规范体现在以下几个方面:版本号、资源路径、请求方式、查询参数、响应参数、状态码。其中,命名版本号可以解决版本不兼容问题,在设计RESTful API的一种实用的做法是使用版本号。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号