java rest 知乎_java 自动化 三分钟带你理解 RESTful

1.1、简介

大家如果接触过http协议,那么肯定听过一个名词“RESTful ”。RESTful 是目前最流行的 API 架构风格,用于 Web 数据接口的设计。那什么是RESTful 呢? RESTful 的核心思想: 请求方式 + URL的方式对资源发起命令。 比如:GET /user 这个命令中,GET 查询动作,user是被查询的对象。 比如:POST /user 这个命令中,POST新增动作,user是被新增的对象。

1.2、常用请求方式

GET:查询(Read)

POST:新增(Create)

PUT:更新(Update)

PATCH:部分更新(Update)

DELETE:删除(Delete)

采用这种约定之后,每个动作对应不同的请求方式,但是URL不会发生变化。对于接口的维护和测试都是非常方便的。

1.3、RESTful和其他接口设计的区别

传统接口设计方式:

GET/POST /getAllUsers 查询所有的用户

GET/POST /getUserById?id=1 查询id=1用户

POST /createUser 创建用户

GET/POST /deleteByUserId?id=1 删除id=1用户

RESTful

GET /user 查询所有的用户

GET /user/1 查询id=1用户

GET /user?id=1 查询id=1用户

POST /user 创建用户

DELETE /user/1 删除id=1用户

DELETE /user?id=1 删除id=1用户

通过上面对比你会发现,RESTful类型的接口更加简单轻量,需要记忆的东西也变少了,这就是RESTful魅力所在。

1.4、状态码

http状态码是一个三位数,范围100-599,以第一位数分类。

1XX 接受的请求正在处理

2XX 请求正常处理完毕 200

3XX 重定向(302)相关和缓存(304)

4XX 客户端错误,服务端无法处理请求 404

5XX 服务器请求处理失败 500

在RESTful接口设计中1XX和3XX基本用不到,4XX和5XX还是和普通接口一样,出现了什么错误做出对应提示即可。只有2XX会有一些改变,传统接口成功之后我们都会统一返回200不做区分,而RESTful对于不同的请求方式会返回不同的状态码。如下:

GET: 200 OK

POST: 201 Created

PUT: 200 OK

PATCH: 200 OK

DELETE: 204 No Content

1.5、响应报文类型

RESTful接口返回的响应报文一般是JSON或者XML,由Content-Type这个实体头字段指定,不应该返回纯文本。JSON也是目前最常用的一种传输格式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值