什么是REST?
REST代表代表性状态转移 。 我们也可以说REST是API的体系结构样式或设计模式。
-
REST确定API的外观。
-
这是开发人员在创建其API时应遵循的一组规则。
-
这些规则之一说,当您链接到特定的URL时,您应该能够获得一条数据(称为资源)。
-
每个网址都称为一个请求,例如[www.google.com],而发送回给您的数据称为响应。[这是我们在浏览器中可以看到的google页面]
因此,在继续使用REST API之前,我们需要知道什么是API?
API代表应用程序编程接口。
简而言之, API是用于构建和集成应用程序软件的一组定义和协议。
您在使用Facebook等应用程序或者在手机上查看天气时会使用API。
什么是RESTful API(REST API)?
REST API
使用HTTP请求来获取,放置,发布和删除数据。
REST API涉及的方法:
为了使API是RESTful,我们需要遵循以下6个约束:
1.统一的界面
统一接口定义客户端和服务器之间的接口。
对我们来说,这意味着
-
HTTP动词(GET,POST,PUT,DELETE)
-
URI(资源名称)
-
HTTP响应(状态和正文)
2.无状态
由于完整的请求-响应过程是通过HTTP协议完成的,因此它不存储有关事务的任何数据。
3.可缓存
许多客户端或用户访问同一台服务器并经常请求相同的资源,因此有必要对这些响应进行缓存,以避免再次对同一请求进行不必要的处理并显着提高性能。
4.客户端-服务器
统一接口将客户端与服务器分开。 这意味着客户端不关心后端数据或数据存储,服务器不关心用户界面或用户状态,因此服务器可以更简单,更可扩展。 只要不更改接口,服务器和客户端也可以独立替换和开发。
5.分层系统
在请求数据的客户端与将响应发送回的服务器之间,中间可能有许多服务器。 这些服务器可能还提供缓存层,安全层,负载平衡层或其他功能。 这些层不会影响请求或响应。
6.按需编码(可选)
按需编码条件是可选的,它允许客户按需运行一些代码,即通过脚本或applet将服务器逻辑的一部分扩展到客户端。 因此,即使使用服务器提供的完全相同的服务,不同的客户也可能以特定的方式表现。 当执行一些效率更高或更快速的客户端服务时,可以使用按需编码。
REST API的方法:
我们所有人都使用网络技术,进行CRUD操作。 当我说CRUD操作时,仅此而已,我们可以创建资源,读取资源,更新资源和删除资源。 现在,要执行这些操作,您实际上可以使用HTTP方法,这些方法不过是REST API方法。
为什么要REST?
REST的最重要功能是它强制执行统一的界面 -每个人都遵循的一组指令或规则。
REST API易于使用且灵活。
由于REST遵循标准的HTTP操作,因此它使用具有特定含义的动词,例如“ get”或“ delete”,以避免不确定性。
REST API也易于修改和扩展。
REST API始终独立于我们可以在任何地方使用的平台或语言的类型。
REST对于构建大型,可伸缩的系统或应用程序很有用。