我眼中的RestFul API是怎样的

前端之家收集整理的这篇文章主要介绍了我眼中的RestFul API是怎样的前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

好久没写了,那我就写着restful先把。

首先RestFul API是一种接口设计规范!!!

然而Restful有个很高大上的解释:表现层状态转移。what!这样谁看得懂

这样我先从Rest解释,解释的不好在评论上请加上你的理解,谢谢。

REST全称是 Resource Representational State Transfer ,意思就是资源在网络中以某种表现形式进行状态转移。表格形式如下:

解释
Resource 资源。如 http://api.example.com/goods 中goods是该资源的获取
Representational
某种表现形式,如用JSON,XML,JPEG等
State Transfer 状态变化。通过HTTP动词实现

有了上面的表格我举个例子来讲:

GEThttp://api.example.com/goods/1

以上是获取货物的例子,在Restful中所有资源均不以动词形式出现,所以goods是名词,而不是以往的 GEThttp://api.example.com/getGoods?id=1 X

但是一个名词怎么能代表获取资源了(获取资源可是一个动词啊),这时候HTTP动词 GET会将其转为 "获取" 的动作,而类似的HTTP动词如下:

HTTP请求 解释
GET /goods/1 返回指定id商品
POST /goods 新增商品
PUT /goods/1 修改id为1商品
DELETE /goods/1 删除id为1商品


最后最后,上面是我们请求的格式,响应的时候需要带上我们看的懂的状态码如:

GET /goods/1 对应 200 OK

POST /goods 对应 201 CREATED

PUT /goods/1 对应 202 UPDATED

DELETE /goods/1 对应 204NO CONTENT

注:要让我们看到返回状态码就知道干了什么~~~~~~~~~~~


总结一句话:看url就知道要什么、看http method就知道干什么、看http status code就知道结果如何


参考文章:https://www.zhihu.com/question/28557115 及 相关书籍片段

原文链接:https://www.f2er.com/javaschema/282767.html

猜你在找的设计模式相关文章