什么是REST API

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-10
什么是REST API?请解释的通俗一点,它和一般的API有什么区别

REST API是一组关于如何构建Web应用程序API的架构规则、标准或指导,REST API遵循API原则的架构风格。REST是专门针对Web应用程序而设计的,其目的在于降低开发的复杂度,提高系统的可伸缩性。
REST API和一般的API区别为:包含不同、资源不同、状态不同。
一、包含不同
1、REST API:REST API 是API的子集;所有的REST API都是API。
2、一般的API:一般的API的为。API是REST API的超集,不是所有的API都是REST API。
二、资源不同
1、REST API:在REST API架构中,每一个资源都有与之对应的唯一资源标识符(resource identifier),当资源的状态发生改变时,资源标识符不会发生改变。
2、一般的API:一般的API架构中,Web中所有的事物(文本、音频、视频、图片、链接)被统一的抽象为资源(resource)。当资源的状态发生改变时,资源标识符会发生改变。

三、状态不同
1、REST API:在REST架构中,所有的操作都是无状态的。REST架构不遵循CRUD原则。
2、一般的API:一般的API架构中,所有的操作都是有状态的。遵循CRUD原则,所有的资源都可以通过GET、POST、PUT和DELETE这四种行为完成对应的操作。

REST指一组架构约束条件和原则,满足约束条件和原则的应用程序设计。
架构,软件体系结构分为三部分:构建,用于描述计算机;连接器,用于描述构建的链接部分;配置将构建和连接器组成有机整体。
web基本技术:
URI(统一资源标示符)HTTP(超文本传输协议)(post、get、put、delete)
Hypertext。
1、每个资源都应该有唯一的一个标识
2、使用标准的方法更改资源的状态
3、request和response的自描述
4、资源多重表述
5、无状态服务

REST 是REpresentational State Transfer的缩写,字面的翻译是表现层状态转移。

RESTful API就是REST风格的网络接口,REST描述的是在网络中client和server的一种交互形式;REST本身不实用,实用的是如何设计。

Server提供的RESTful API中,URL中只使用名词来指定资源,原则上不使用动词。“资源”是REST架构或者说整个网络处理的核心。


拓展资料:

REST指一组架构约束条件和原则,满足约束条件和原则的应用程序设计。架构,软件体系结构分为三部分:构建,用于描述计算机;连接器,用于描述构建的链接部分;配置将构建和连接器组成有机整体。


web基本技术:
URI(统一资源标示符)HTTP(超文本传输协议)(post、get、put、delete) Hypertext。


1、每个资源都应该有唯一的一个标识


2、使用标准的方法更改资源的状态


3、request和response的自描述


4、资源多重表述


5、无状态服务

用HTTP协议里的动词来实现资源的添加,修改,删除等操作。即通过HTTP动词来实现资源的状态扭转:

GET    用来获取资源

POST  用来新建资源(也可以用于更新资源)

PUT    用来更新资源, 

DELETE  用来删除资源。



REST APL指一组架构约束条件和原则,满足约束条件和原则的应用程序设计。架构,软件体系结构分为三部分:构建,用于描述计算机;连接器,用于描述构建的链接部分;配置将构建和连接器组成有机整体。

拓展资料:rest,即REST(RepresentationalStateTransfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。现如今在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。



一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

拓展内容:

原则条件:

REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。

Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客户端可以缓存数据以改进性能。

定义规则:

REST中的资源所指的不是数据,而是数据和表现形式的组合,比如“最新访问的10位会员”和“最活跃的10位会员”在数据上可能有重叠或者完全相同,而由于他们的表现形式不同,所以被归为不同的资源,这也就是为什么REST的全名是Representational State Transfer的原因。

资源标识符就是URI(Uniform Resource Identifier),不管是图片,Word还是视频文件,甚至只是一种虚拟的服务,也不管你是XML(标准通用标记语言下的一个子集)格式、txt文件格式还是其它文件格式,全部通过 URI对资源进行唯一的标识。



一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

拓展内容:

原则条件:

REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。

Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客户端可以缓存数据以改进性能。

定义规则:

REST中的资源所指的不是数据,而是数据和表现形式的组合,比如“最新访问的10位会员”和“最活跃的10位会员”在数据上可能有重叠或者完全相同,而由于他们的表现形式不同,所以被归为不同的资源,这也就是为什么REST的全名是Representational State Transfer的原因。

资源标识符就是URI(Uniform Resource Identifier),不管是图片,Word还是视频文件,甚至只是一种虚拟的服务,也不管你是XML(标准通用标记语言下的一个子集)格式、txt文件格式还是其它文件格式,全部通过 URI对资源进行唯一的标识。



REST的全拼是(REpresentational State Transfer,表述性状态转移)。REST指的是一组架构约束条件和原则,满足这些约束条件和原则的应用程序设计就是RESTful。

REST指一组架构约束条件和原则,满足约束条件和原则的应用程序设计。
架构,软件体系结构分为三部分:构建,用于描述计算机;连接器,用于描述构建的链接部分;配置将构建和连接器组成有机整体。

Rest API,无论它的名字多么高大上,它本质还是一个HTTP请求,POST也好,GET也罢,都是不同的数据提交方式。所以,能够决定一个Rest API的也就:URI、参数、请求方式、请求头等。
API平台的架构,其实和底层公司的业务系统架构有着密切的关系,基于一个好的系统架构写一个Rest API平台基本是水到渠成的。