接口相关
接口
Web API接口
首先,我们要知道接口是什么,因为作为一个后端工程师来说,写接口应该是接触最多,也是最熟悉的东西,所以在向别人描述的时候,如果我们只是把自己的工作描述为,我是一个写接口的,未免有些太过简单,所以,我们还是要大概了解一下其具体概念.
Web API接口,是通过网络规定前后台信息交互规则的url链接,也就是前后台信息交互的媒介.当然,其与一般的url还是有些区别,具体如下:
-
请求方式
常见的请求方式有五种:get,post,put,patch,delete,当然在这五种里面我们用的最多的还是get和post
-
请求地址
API接口的请求地址通常会在域名或者后缀里有些标识性的东西,比如:
https://www.baidu.com/api https://api.baidu.com/
上面的url还是跟普通的url有些区别,比如api的标识
-
请求参数
API接口所携带的请求参数应该是key-value的数据,格式通常为json或者xml,比如
ak:'' # ak是应用唯一性的标识,要申请 output:json|xml
-
响应结果
响应结果的格式根据前端发送数据的不同而不同,大致就是xml和json两类,下面是json数据的返回格式
{ "status":0, "message":"ok", "result":[ { }, "detail":1, "uid":"" ] }
接口的编写
这里我们推荐YApi来进行接口的编写,当然我们也可以在公司内部服务器上搭建一个简单的YApi来进行接口的管理.如果需要自己搭建,推荐以下博客:
https://blog.csdn.net/qq_28190039/article/details/90170675
下面是YApi的官方网站,我们去上面做测试和学习.
这里我们介绍YApi的一些用法:
登录进官网之后,我们申请一个账号,然后按照下列步骤
- 右上角,添加项目->输入路径和描述之后,选择私有或者公开,然后点击创建项目
- 选中我们创建的项目,右上角有添加接口,点击之后输入接口名称和接口路径,以及接入方式,一般都是get
- 在编写接口的编辑里面,可以重新设置接口路径
- 请求参数的设置,可以添加参数,设定必须还是非必须,请求的格式和备注等
- 返回数据设置,可以设定json或者xml,下面可以添加各种返回数据的格式
RESTful接口规范
API的设计一定要有一定的规范,而RESTful就是目前为止最流行的API设计规范.
REST全称为Representational StateTransfer 是在2000年Roy Fielding博士在其博士论文里提出来的,延续至今,依然是最适用的规范.
RESTfule接口规范大致包括以下四大类
-
如何设计url
-
从安全方面考虑,要采用https协议进行传输,比http更加安全
-
接口的特征性,即关键字类似api,在域名或者后缀里面加入
-
版本号,如果url有多版本,需要在url链接里面标识api数据的版本
-
接口通常都是完成数据前后台交互的,交互的数据统称为资源,常用复数来表示,比如
https://api.baidu.com/books
-
-
请求方式以及操作方式
对资源的操作应该是由请求方式来决定的,而不是后端擅自决定的,比如
get,post,put,patch,delete
各种请求,调用的url返回的数据应该是不同的,这些是在后端写的
-
响应状态码
RESTful接口规范里的响应状态码其实就是http协议里面的状态码
- 响应状态码2XX
- 200 : 常规请求
- 201 : 创建成功
- 响应状态码3XX
- 301 : 永久重定向
- 302 : 暂时重定向
- 响应状态码4XX
- 403 : 请求无权限
- 404 : 请求路径不存在
- 405 : 请求方法不存在
- 响应状态码5XX
- 500 : 服务器异常
- 响应状态码2XX
-
响应结果
响应结果分为xml和json,下面是json的响应结果的数据格式,通常要有状态码,状态信息以及数据本身
{ "status":0, "msg":"ok", "result":[ { "address":"", "detail":1, "uid":"", } ] }