postman的使用
postman是目前最好用的 模拟发送http请求的工具
DAY80-4 自动化接口测试
还可以把测试的文件 导出json格式文件 并导入该文件 测试
Restful规范
定义了WEB API 接口的设计风格 尤其适用于前后端分离 我们任何一个框架都可以实现restful规范的api接口 10条规范
# 抓包工具:
fiddler,charles 可以抓浏览器的包和手机发过去的包
# 1 安全数据保障 :建议使用https进行传输 不要使用http协议
# 2 接口的特征表现 建议带api.xxxxxxx或xxxxx/api 让别人一看 就是一个api接口
# 3 多版本共存 不能修改之前的接口版本 如果有接口更新的话 需要从新在写接口 v1,更新v2,在更新v3
# 4 数据既是资源 都用名词表示 把数据 当成全部真实的物品,品类,东西,人等等 *************
多本书用复数 也就是单词+s books
一本书 单词 book
# 5 根据请求方式 操作不同 决定增删改查 ***********
get 查
post 增
put 修改
patch 修改 有点不一样
delete 删
# 6 过滤,通过url上传的形式传递搜索条件
?limit=10 指定返回记录的数量
?offset=10 指定返回记录的开始位置
?page=4 指定返回的页面
# 7 响应状态码
正常响应
200 成功
201 创建成功
重定向响应
301 永久重定向
302 暂时重定向
客户端异常
403 请求无权限 foobbden
404 请求路径不存在
405 请求方法不存在
服务器端异常
500 服务器异常
# 8 错误处理 应返回错误信息 error当做key
{“error”:“无权限操作”}
可以有也可以没有 这些知识规范
# 9 返回结果,应该符合以下规范
get请求 返回列表(数组)
返回单个就直接返回一个字典就行了
post 创建后,需要把新生成的数据在返回给前端
前端拿着新生成的数据 验证并直接挑战页面就可以了
put,patch 修改后数据,也需要返回给前端
delete 返回一个空文档
# 10 响应的json格式数据可以带地址
{
“name”:"肯德基",
"img":"https//api.xx/img"
}
最好以{’‘ key“:“ value”,”key ’‘:“ value” , “ key”: [{“key”:“value”},{“key”:“value”},{“key”:“value”}]}
如果直接data 应该['' '':{“key”:“value”}," ":{“key”:“value”}]
这样写的原因是 直接可以 a[i] 拿数据 也可以for循环数据 字典的话会需要.title 或 .value 想比较麻烦一些,这样数据结构是方便简洁的
drf安装
pip install djangorestframework
pip3 install djangorestframework -i https://pypi.tuna.tsinghua.edu.cn/simple
#使用
1 在setting里app 注册
'rest_framework'
2 在moudels 里建立数据库模型
3 新建一个序列化类
1 添加一个.py文件 名字自己起
2 添加类
4 在视图函数中写视图类
全部都写CBV 功能
5 写路由关系