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 ...
随机推荐
- spark——详解rdd常用的转化和行动操作
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是spark第三篇文章,我们继续来看RDD的一些操作. 我们前文说道在spark当中RDD的操作可以分为两种,一种是转化操作(trans ...
- Python-selenium 元素定位
1.id定位find_element_by_id() 通过id属性定位元素,如果id是动态变化的话不能用id来进行定位 2.name定位find_element_by_name() 通过name属性定 ...
- L1-L11 jupter notebook 文件
L1-L11 jupter notebook 文件下载地址 https://download.csdn.net/download/xiuyu1860/12157961 包括L12 Transforme ...
- 15分钟从零开始搭建支持10w+用户的生产环境(二)
上一篇文章,把这个架构的起因,和操作系统的选择进行了详细说明. 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(一) 二.数据库的选择 对于一个10W+用户的系统,数据库选择很重要. 一 ...
- 使用HTMLTestRunner生成报告
使用HTMLTestRunner生成报告 unittest本身并不具备这个功能,需要使用HTMLTestRunner库 使用步骤: 首先需要下载.py文件:http://tungwaiyip.info ...
- 【题解】P2480 [SDOI2010]古代猪文 - 卢卡斯定理 - 中国剩余定理
P2480 [SDOI2010]古代猪文 声明:本博客所有题解都参照了网络资料或其他博客,仅为博主想加深理解而写,如有疑问欢迎与博主讨论✧。٩(ˊᗜˋ)و✧*。 题目描述 猪王国的文明源远流长,博大精 ...
- [Java网络安全系列面试题] GET 和 POST 的区别在哪里?
一. 概述 本文的内容源自其他博客的总结,属于笔者的读书笔记,结构如下: HTTP 的请求报文 GET 方法的特点 POST 方法的特点 GET 和 POST 的区别 二. HTTP 的请求报文 首先 ...
- 如何使用IE9浏览器自带开发人员工具捕获网页请求
我们在通过浏览器访问一个网页的时候,有时候会遇到页面不能正常显示,图片不能正常加载的问题. 如果我们需要知道浏览器打开该网页时,网页中每个元素的加载情况.这时,我们便可以借助浏览器自带开发人员工具,来 ...
- php 推荐密码加密的方法
password_hash() 函数 password_hash() 函数用于创建密码的散列(hash) PASSWORD_DEFAULT - 使用 bcrypt 算法 (PHP 5.5.0 默认). ...
- linux--配置开发环境 --Apache篇
现在我的的linux服务器上一般都是使用:Apache 和 Nginx 这两种配置. 你现在安装好了,启动了,也无法通过你服务器绑定的网址访问你的网站. 这是你可以通过这个命令查看一下你的80端口: ...