requests 库之 get、post、put、delete 详解

摘要

使用脚本进行接口测试的时候,通常使用 python 的 requests 库进行测试。 本次主要给大家介绍 requests 的常见用法。

一、requests 库常见的请求方式

对于requests 的常见的请求方式通常是:get、post、put、delete

那么对于以上的方式用法该如何用呢?

二、接口测试之 get

结构:

requests.get(url,**kwargs) 或者

不需要单独参数:requests.get(url?params=xxxx)

解析:

get 请求是日常很常见的请求,实际工作中也不会有太多的get请求接口去进行测试。我们需要知道的是 requests 框架对于get请求的实际应用。

对于以上实例中,get 请求有两个参数,其中 url 是必须项。例如仅范围:https//www.baidu.com 

我们就可以写成如下代码,用 res 接受返回的值然后打印出来。

res=requests.get("https://www.baidu.com")
print(res.text)

当然有很多的 get 请求地址后方会传递参数,如下代码。

res=requests.get("https://www.baidu.com?s=123")
print(res.text)

也可以把参数分开

paras={"s":"123"}
res=requests.get("https://www.baidu.com",params=params)
print(res.text)

备注说明:get 请求参数利用requests 底层的参数 params

三、接口测试之 post

结构:requests.post(url,data,json,headers)

解释:对于post 请求通常先看接口请求的 Content-Type, 如果 Content-Type 为 application,那么我们就用 json 接受body体内容,如果 Content-Type 为 x-www-form-urlencoded、form-data 等表单类型,那么就用 data 作为接收 body 体内容。

如下是测试json 类型的接口请求示例:

header={"Content-Type":"application/json","Authorize":"xxx..token..."}
url="https://xxxxxxx"
data={key:value}
res=requests.post(url,json=data,headers=header)
print(res.json())

四、接口测试之 put 请求

结构:requests.put(url,data)

解释:对于put 请求,通常是上传文件操作。 我们需要知道上传文件的地址:url 和 上传的文件 data

对比其他请求的特殊性在于 data 如何获取?

获取data 的常用方式:with open() as f:

#请求头部信息
headers={
    "Content-Type":"image/json",
    "Authorization":"Bearer \9uX2F1dGhlbnRpY2F0aW9uIjoiQVVUSE9SSVpFRCIsImV4cCI6MTcwOTc0NzI5NCwiaWF0IjoxNzA5NzA0MDk0LCJ1c2VybmFtZSI6ImppYW5namljaGVuZzEifQ.xx0bxmOIflPqDJSfFuIohpEEhmP5FV9s44QUGFNZ9io",
    "Uniqcode":"N2NiMWliMTImMTcwOTcwNDEwNjY3OA=="}

#需要上传的文件绝对路径
file_path="/Users/admin/Downloads/zhuomian.png"

#请求体
data={"user_id":"511610","avatar":"/dxxxxe/xxxxx/xxxxx/xxxx/avxxxtor/51133610.jpeg"}

#put 请求应用:
with  open(file_path,"rb") as f:
requests.put(url="http://172.28.8.10:307/storage/env_storage/test/user/avator/51133610.jpeg", data=f)

五、接口测试之 delete 请求

结构:requests.delete(url=url,**kwargs)

实例:requests.delete(url,**kwars) 或者 requests.delete(url=url,**kwars)

delete 请求的应用方式可以说和 get 的一样,大家可以看上面的 get 请求来练习 get 请求。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值