浅谈RESTful接口设计和开发(增删改查)

一.REST起源web

REST(Representational State Transfer)表象化状态转变(表述性状态转变),在2000年被提出,基于HTTP、URI、XML、JSON等标准和协议,支持轻量级、跨平台、跨语言的架构设计,是Web服务的一种新的架构风格(一种思想)。json

1.什么是轻量级:后端

代码不被侵入(正例:SpringMVC中不用接口和继承,仅用注解完成。反例:Struts中每个Action都要继承核心控制器),轻量级跟包大小无关。耦合性越低,越轻量。安全

二.REST架构的主要原则服务器

对网络上全部的资源都有一个资源标志符。
对资源的操做不会改变标识符。
同一资源有多种表现形式(xml、json)
全部操做都是无状态的(Stateless)网络

符合上述REST原则的架构方式称为RESTful架构

1.URI和URL区别:less

URI:http://example.com/users/
URL:http://example.com/users/{user} (one for each user)svg

2.什么是无状态性:post

使得客户端和服务器端没必要保存对方的详细信息,服务器只须要处理当前的请求,不需了解请求的历史。能够更容易的释放资源,让服务器利用Pool(链接池)技术来提升稳定性和性能。
在这里插入图片描述
三.RESTful介绍

RESTful是一种常见的REST应用,是遵循REST风格的web服务,REST式的web服务是一种ROA(面向资源的架构)。

1.RESTful资源操做
在这里插入图片描述
幂等性:对同一REST接口的屡次访问,获得的资源状态是相同的。
安全性:对该REST接口访问,不会使服务器端资源的状态发生改变。

2.接口示例:

2.1.传统URL请求格式:

http://127.0.0.1/user/query/1 GET 根据用户id查询用户数据
http://127.0.0.1/user/save POST 新增用户
http://127.0.0.1/user/update POST 修改用户信息
http://127.0.0.1/user/delete GET/POST 删除用户信息

2.2.RESTful请求格式:

http://127.0.0.1/user/1 GET 根据用户id查询用户数据
http://127.0.0.1/user POST 新增用户
http://127.0.0.1/user PUT 修改用户信息
http://127.0.0.1/user DELETE 删除用户信息

3.响应设计

原则:数据接收到便可使用,无需拆箱。

在一次请求中,content body仅仅用于传输数据。Header中存放描述请求或请求的元数据,例如 X-Result-Fields。
在这里插入图片描述

4.http响应状态码

根据http响应码,判断请求状态,进而作出提醒。
在这里插入图片描述

四.RESTful的使用

下面将用实际代码演示RESTful作增删改查的操做使用示例:
1.查询get:
在这里插入图片描述
查询测试:
在这里插入图片描述
在这里插入图片描述

2.新增post:
在这里插入图片描述
新增测试:

AJAX调用:
在这里插入图片描述
在这里插入图片描述

3.更新put:
在这里插入图片描述
在这里插入图片描述

4.删除delete:
在这里插入图片描述
在这里插入图片描述
五.结语

至此,RESTful的介绍和使用已经完成,RESTful已在各互联网公司接口定义中,成为主流的范式,RESTful减小了传统请求的拆装箱操做,结构清晰,在接口定义中受到先后端开发者的青睐。