接口测试项目实例网址:http://www.testingedu.com.cn:8081/inter/index.html
。
接口简略说明:
-
鉴权接口:
http://www.testingedu.com.cn:8081/inter/HTTP/auth
该接口返回一个token值,之后的所有接口请求均需添加token头域使用该token。
注册接口:
http://www.testingedu.com.cn:8081/inter/HTTP/register
-
登录接口:
http://testingedu.com.cn:8081/inter/HTTP/login
该接口返回一个userid,在请求用户信息时使用,因此保存为变量。
-
获取用户信息接口:
http://testingedu.com.cn:8081/inter/HTTP/getUserInfo
该接口需要使用登录后所获取的userid,因此使用之前保存的userid变量值。
注销接口:
http://testingedu.com.cn:8081/inter/HTTP/logout
说明:
接口测试项目实例中,访问注册、登录、获取用户信息、登出接口之前,均需要调用auth接口获取token数据。
因此需要通过auth接口获取的token信息之后,存为变量供后续接口调用。
(一)项目接口文档
1、/inter/HTTP/auth(鉴权)接口
-
功能说明
获取接口授权信息返,回授权后token。本接口是访问平台所有接口之前必须要调用的授权接口,只有通过该接口初始化token之后,才能访问平台其他接口。
(auth接口就是获取token接口,作用是鉴权。)
接口格式
Json数据格式HTTP请求方式
POST-
输入参数说明
1)接口接收参数
无
2)头部校验参数参数名称 是否必须 类型 描述 token N string 授权接口的token参数,如果已经存在有效token,则需要带上,此时不重新分配token;如果没有有效的token,或者不带token,都会重新分配token。 请求示例
http://www.testingedu.com.cn:8081/inter/HTTP/auth
-
返回参数说明
参数名称 类型 描述 status int 请求结果状态码:
200:success token不存在或失效,创建token并返回
201:success token未登录
202:success token已授权登录,返回token。msg string 请求结果提示信息。与status对应。 token string 请求授权成功,返回token给客户端。200和202状态,会返回token。 -
正确返回示例
{ "status": 200, "msg": "success", "token": "109f1a34bdcf4785b6c70a9917d7a49d" }
-
错误返回示例
无
2、/inter/HTTP/register(注册)接口
功能说明
注册用户。
通过接口,向服务器提交参数,然后在平台注册自己的用户账号。接口格式
jsonHTTP请求方式.
POST-
输入参数说明
(1)接口接收参数如下:
参数名称 是否必须 类型 描述 username Y string 用户名参数,范围[3,16] pwd Y string 密码参数,范围[3,16] nickname Y string 昵称参数,范围[3,36] describe N string 个人描述参数,范围[0,127] (2)头部校验参数
参数名称 是否必须 类型 描述 token Y string 鉴定请求是否合法,用户是否登录。 -
请求示例
http://www.testingedu.com.cn:8081/inter/HTTP/register
参数如下:
username
: Will
pwd
: will
nickname
: Will
describe
: Will -
返回参数说明
参数名称 类型 描述 status int 请求结果状态码:
200:恭喜您,注册成功
400:参数错误
401:用户名已经注册
402:参数错误.
405:非法请求
406:登录状态,不能注册msg string 请求结果提示信息。与status对应。 -
正确返回示例
{ "status": 200, "msg": "恭喜您,注册成功" }
-
错误的返回示例
{ "status": 405, "msg": "非法请求" }
3、/inter/HTTP/login(登录)接口
功能说明
向服务器发送登录鉴权。
接口向服务器发送用户名和密码参数,通过登录接口,去登录平台。登录成功后,当前使用的token会备注为已登录状态。接口格式
jsonHTTP请求方式.
POST-
输入参数说明
(1)接口接收参数如下:
参数名称 是否必须 类型 描述 username Y string 用户名参数,范围[3,16] pwd Y string 密码参数,范围[3,16] (2)头部校验参数
参数名称 是否必须 类型 描述 token Y string 登录接口的token参数,如果没有该参数,不能请求登录接口。如果有该参数,登录成功后,该token会具备已登录的状态。 -
请求示例
http://testingedu.com.cn:8081/inter/HTTP/login
参数如下:
username
: xiaoming
password
: 123456 -
返回参数说明
参数名称 类型 描述 status int 请求结果状态码:
200:恭喜您,登录成功
401:用户名密码错误
402:参数错误
405:非法请求
406:用户已经在别处登录msg string 请求结果提示信息。与status对应。 id string 登录成功后,返回当前用户的userid,其他情况不返回该字段。 -
正确返回示例
{ "status": 200, "msg": "恭喜您,登陆成功", "userid": "1" }
-
错误的返回示例
{ "status": 406, "msg": "非法请求" }
4、/inter/HTTP/getUserInfo(用户信息)接口
-
功能说明
向服务器获取指定id的用户信息。
该用户的id必须与当前用token登录用户一致,否则不能获取。 接口格式
jsonHTTP请求方式.
POST-
输入参数说明
(1)接口接收参数如下:
参数名称 是否必须 类型 描述 username Y string 用户id,范围[1,10] (2)头部校验参数
参数名称 是否必须 类型 描述 token Y string 用来校验查询信息的用户是否是已经登录状态。 -
请求示例
http://testingedu.com.cn:8081/inter/HTTP/getUserInfo
参数如下:
id
: 1 -
返回参数说明
参数名称 类型 描述 status int 请求结果状态码:
200:查询成功
401:您还未登录
402:参数错误
404:非法查询
405:非法请求
406:token已失效msg string 请求结果提示信息。与status对应。 id string 查询成功,返回用户id;失败不返回。 nickname string 查询成功,返回用户昵称信息;失败不返回。 describe string 查询成功,返回用户个人描述信息;失败不返回。 -
正确返回示例
{ "status": 200, "msg": "查询成功", "userid": "1", "nickname": "xiaohuahua", "describe": "擅长Python、Java自动化开发" }
-
错误的返回示例
{ "status": 405, "msg": "非法请求" }
5、/inter/HTTP/logout(注销)接口
-
功能说明
注销登录(退出)。
接口向服务器注销当前token登录的用户。 接口格式
jsonHTTP请求方式.
POST-
输入参数说明
(1)接口接收参数
无
(2)头部校验参数
参数名称 是否必须 类型 描述 token Y string 用来校验用户是否是已经登录状态。 -
请求示例
http://testingedu.com.cn:8081/inter/HTTP/logout
-
返回参数说明
参数名称 类型 描述 status int 请求结果状态码:
200:注销成功
406:token已失效msg string 请求结果提示信息。与status对应。 -
正确返回示例
{ "status": 200, "msg": "用户已退出登录" }
-
错误的返回示例
{ "status": 406, "msg": "token已失效" }
(二)网站上手动验证
在实际的工作中,我们查看完文档之后,需要到网站上进行手动操作,调用一下文档中的接口,还可以借助抓包工具,来检查一下文档中有没有表述上的问题。(也就是最基本的流程判断)
通过实际操作得知如下流程:
用户注册的前后会调用auth(鉴权)接口。
-
用户登陆后会调用查询用户信息接口,在调用查询用户信息接口前也会调用auth(鉴权)接口。
也就是一个登陆操作,执行了登陆,鉴权,查询三个接口。
注销用户后会调用auth(鉴权)接口,使用户鉴权失效。