Restful 风格
Posted abysschen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Restful 风格相关的知识,希望对你有一定的参考价值。
在进行API接口设计时,不同的开发人员可能有不同的设计风格,风格迥异。那是否存在一种统一的接口设计方式,被广大开发人员所接受呢?这就是被普遍采用的RESTful API设计风格。
1. URL路径
URL地址尽量使用名词复数,不要使用动词。
# 不好的例子 /getProducts /listOrders # 正确的例子 GET /products:将返回所有产品信息 POST /products:将新建产品信息 GET /products/4:将获取产品4 PUT /products/4:将更新产品4
2. 请求方式
访问同一个URL地址,采用不同的请求方式,代表要执行不同的操作。
常用的HTTP请求方式有下面四个:
例如:
GET /books:列出所有图书数据 POST /books:新建一本图书数据 GET /books/<id>/:获取某个指定的图书数据 PUT /books/<id>/:更新某个指定的图书数据 DELETE /books/<id>/:删除某个指定的图书数据
3. 过滤信息
过滤参数可以放在查询字符串中。
在访问API接口获取数据时,可能需要对数据进行过滤。
常见的参数:
?limit=10:指定返回记录的数量 ?offset=10:指定返回记录的开始位置。 ?page=2&pagesize=100:指定第几页,以及每页的记录数。 ?sortby=name&order=asc:指定返回结果按照哪个属性排序,以及排序顺序。
4. 响应数据
针对不同操作,服务器向用户返回不同的响应数据。
一般遵循以下规范:
1. 获取一组数据,返回一组数据 2. 获取指定数据,返回指定数据 3. 新增数据,返回新增的数据 4. 修改数据,返回修改的数据 5. 删除数据,返回空
5. 响应数据格式
服务器返回的响应数据格式,应该尽量使用JSON。
6. 响应状态码
服务器向客户端返回的状态码和提示信息,常见的状态码如下:
200 OK - [GET/PUT]:服务器成功返回用户请求的数据 201 CREATED - [POST]:用户新建数据成功。 204 NO CONTENT - [DELETE]:用户删除数据成功。 400 INVALID REQUEST - [POST/PUT]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作 404 NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的。。 500 INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。
以上是关于Restful 风格的主要内容,如果未能解决你的问题,请参考以下文章
在spring中使用webservice(Restful风格)