HTTP接口测试
HTTP接口测试
1.1 get接口
请求URL
http://api.nnzhp.cn/api/user/stu_info请求方式 get
请求参数
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| stu_name | 是 | string | 学生姓名 |
http://api.nnzhp.cn/api/user/stu_info?stu_name=test001
{
"error_code": 0,
-"stu_info": [
-{
"id": 4058,
"name": "test001",
"sex": "男",
"age": 18,
"addr": "北京市昌平区",
"grade": "7",
"phone": "15062431255",
"gold": 25100
}
1.2 post 接口
2.2.1 登录接口
请求URL
http://api.nnzhp.cn/api/user/login请求方式 post
请求参数 : 参数为key-value形式
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| username | 是 | string | 用户名 |
| passwd | 是 | string | 密码 |
登陆用户名:niuhanyang 密码:aA123456
post方法的参数是放在body中的,参数直接放到URL中是无效的
{
"error_code": 0,
-"login_info": {
"login_time": "20200509211925",
"sign": "34972ea3f42d75c03574d3553a4df77e",
"userId": 47749
}
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| error_code | int | 错误编码,0为操作成功 |
| login_info | object | 登录对象信息 |
| userId | int | 用户id |
| sign | string | 签名 |
| login_time | string | 登录时间 |
2.2.2 添加学生信息接口
请求URL:
http://api.nnzhp.cn/api/user/add_stu请求方式 post
参数 ,入参是json类型
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| name | 是 | string | 学生姓名 |
| grade | 是 | string | 班级 |
| phone | 是 | int | 电话 |
| sex | 否 | string | 性别,如果不传默认为男 |
| age | 否 | int | 年龄,如果不传默认为18 |
| addr | 否 | string | 地址,如果不传默认为北京市昌平区 |
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| error_code | int | 错误编码,1000为操作成功 |
| msg | string | 提示信息 |
请求示例
{
"name":"micr067",
"grade":"白羊座",
"phone":13888888880,
"sex":"男",
"age":26,
"addr":"北京市朝阳区"
}
返回示例
{
"error_code": 0,
"msg": "操作成功!"
}
2.2.3 学生金币充值
请求URL:
http://api.nnzhp.cn/api/user/gold_add
请求方式 post
参数 : 该接口有权限验证,需要admin用户才可以做操作,需要添加cookie cookie中key为登录的用户名,value从登录接口中获取,登陆成功之后会返回sign
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| stu_id | 是 | int | 学生id |
| gold | 是 | int | 金币数量 |
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| error_code | int | 错误编码,0为操作成功 |
| msg | string | 提示信息 |
如上述描述,入参形式需要添加cookie
cookie是保存在用户浏览器端的一个键值对 session就是保存在服务器的一个键值对,一般session都是存在缓存里面,因为要经常用到,要提升性能的话直接把session放到内存里面。
该接口有权限验证,需要admin用户才可以做操作,需要添加cookie
我们通过“获取学生信息”接口查看到学生的id信息,然后通过“登录”接口,获取niuhanyang的签名的值如下:
查询出ID=4058
sign值为:34972ea3f42d75c03574d3553a4df77e
Header:
cookie:niuhanyang=34972ea3f42d75c03574d3553a4df77e
Body
stu_id:4058
gold:1000
2.2.4 获取所有学生信息
请求URL:
http://api.nnzhp.cn/api/user/all_stu请求方式 get
参数 ,需要添加header信息,key为Referer value 为http://api.nnzhp.cn/
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| error_code | int | 错误编码,0为操作成功 |
| all_stu | list | 提示信息 |
1、如果不添加header,直接用浏览器地址栏访问,会提示来路不正确
{
"error_code": 4,
"msg": "请求来路不正确"
}
2、添加header信息,并进行调用
Referer:http://api.nnzhp.cn
2.2.5 文件上传类型
请求URL:
http://api.nnzhp.cn/api/file/file_upload请求方式 post
参数
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| file | 是 | file | 文件 |
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| error_code | int | 错误编码,0为操作成功 |
| msg | string | 提示信息 |
HTTP接口测试的更多相关文章
- 从Fiddler抓包到Jmeter接口测试(简单的思路)
备注:本文为博主的同事总结的文章,未经博主允许不得转载. Fiddler下载和配置安装 从网上下载fiddler的安装包即可,直接默认,一直点击下一步,直至安装完成. 安装完成后直接打开Fiddler ...
- C#进阶系列——WebApi 接口测试工具:WebApiTestClient
前言:这两天在整WebApi的服务,由于调用方是Android客户端,Android开发人员也不懂C#语法,API里面的接口也不能直接给他们看,没办法,只有整个详细一点的文档呗.由于接口个数有点多,每 ...
- JAVA+Maven+TestNG搭建接口测试框架及实例
1.配置JDK 见另一篇博客:http://www.cnblogs.com/testlurunxiu/p/5933912.html 2.安装Eclipse以及TestNG Eclipse下载地址:ht ...
- Web接口测试工具--Jmeter
关于Jmeter性能测试工具不再过多介绍.如果你要学习软件性能测试,那么多少应该会对它有所耳闻. 强烈建议阅读官方文档学习:http://jmeter.apache.org/index.html 还有 ...
- Web接口测试工具---Poster与Postman
工作当中有不少时间在编写和维护接口自动化测试用例.打算先整理一些接口相关工具的使用. 简单对接Web口测试的相关工具/技术做个划分. HTTP/SOAP协议接口的功能测试: 1.浏览器URL(GET请 ...
- HttpClient在HTTP协议接口测试中的使用
TTP协议的接口测试中,使用到最多的就是GET请求与POST请求,其中POST请求有FORM参数提交请求与RAW请求,下面我将结合HttpClient来实现一下这三种形式: 一.GET请求: GET请 ...
- Jsoup做接口测试
最早用Jsoup是有一个小的爬虫应用要写,发现Jsoup较HttpClient轻便多了,API也方便易懂,上手很快,对于response的Document解析的选择器用的是cssSelector(Jq ...
- java分享第十一天(接口测试)
HTTP协议的接口测试中,使用到最多的就是GET请求与POST请求,其中POST请求有FORM参数提交请求与RAW请求( post请求时有一个选项是form-data,或者raw,使用raw可以请求 ...
- django项目的接口测试
基于Python的Django框架: 进行接口测试: 参见虫师的博客: 整理部分笔记:
- 接口测试(二)—HttpClient
使用HttpClient进行接口测试,所需要使用的相关代码 HttpClient进行接口测试所需jar包:httpclient.jar.httpcore.jar.commons-logging.jar ...
随机推荐
- 打印图片的属性和实现另存图片功能以及使用numpy
上一篇我们已经学了如何读取图片的功能了以及和opencv的环境搭建了,今天接着来学习,哈哈哈,今天刚好五一,也没闲着,继续学习. 1. 首先我们来实现打印出图片的一些属性功能, 先来看一段代码: im ...
- L25词嵌入进阶GloVe模型
词嵌入进阶 在"Word2Vec的实现"一节中,我们在小规模数据集上训练了一个 Word2Vec 词嵌入模型,并通过词向量的余弦相似度搜索近义词.虽然 Word2Vec 已经能够成 ...
- WEBMIN(CVE-2019-15107) 学习
简单介绍: Webmin是目前功能最强大的基于Web的Unix系统管理工具.管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作.目前Webmin支持绝大多数的Unix系统,这些系统除了 ...
- Java中常量的概念
常量:在程序执行过程中,其值不发生改变的量.分类:A:字面值常量B:自定义常量字面值常量A:字符串常量(用“”括起来的内容).举例:"hello"B:整数常量 (所有的整数)举例: ...
- java中String StringBuilder StringBuffer比较和效率(性能)测试
string stringbuilder stringbuffer三者的区别 从JDK源码看,String.StringBuilder.StringBuffer都是存放在char[] 数组字符串. 简 ...
- py安装教程
https://www.runoob.com/w3cnote/pycharm-windows-install.html
- Selenium常见报错问题(3)- 解决和分析NoSuchElementException
如果你在跑selenium脚本时,需要某些异常不知道怎么解决时,可以看看这一系列的文章,看看有没有你需要的答案 https://www.cnblogs.com/poloyy/category/1749 ...
- Spring Cloud 系列之 Stream 消息驱动(一)
在实际开发过程中,服务与服务之间通信经常会使用到消息中间件,消息中间件解决了应用解耦.异步处理.流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构. 不同中间件内部实现方式是不一样的,这些中间 ...
- Spring Boot @EnableAutoConfiguration和 @Configuration的区别
Spring Boot @EnableAutoConfiguration和 @Configuration的区别 在Spring Boot中,我们会使用@SpringBootApplication来开启 ...
- http协议请求流程分析
http协议请求流程分析 用户输入URL(地址链接)(http://www.baidu.com:80/tools.html)客户端获取到端口及主机名后,客户端利用DNS解析域名,首先客户端的浏览器会先 ...