当前位置: 首页 > article >正文

Python自动化测试之requests库(六)

我们都知道post请求中的body有4种数据类型,今天我们来写一篇关于requests请求json这种数据类型。

同时,在这我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

京东内部员工自动化测试培训课程!盲目自学真的会毁终生,27天学完,能救一个是一个...

数据类型

我们都知道post和get有个大的区别就是get没有body而post存在body,那么body的常见的4种数据类型你知道吗?

application/json:

具体表述请求数据为json格式,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据( enctype 的 POST 默认方式)

格式

{"name":"value","name1":"value2"}

application/x-www-form-urlencoded

浏览器原生form表单默认的数据格式

格式

name=value&name2=value2=name3=value3

我们使用表单上传文件,也可以上传普通数据,只需要让form的enctype等于multipart/form-data就可以了

------WebKitFormBoundaryBRi81vNtMyBL97Rb
Content-Disposition: form-data; name="name"
 
name1
------WebKitFormBoundaryBRi81vNtMyBL97Rb
Content-Disposition: form-data; name="age"
 
12
------WebKitFormBoundaryBRi81vNtMyBL97Rb--

text/xml

以xml的形式进行传参

<!--?xml version="1.0"?-->
 
<methodcall>
 
<methodname>examples.getStateName</methodname>
 
<params>
 
<param>
 
<value><i4>41</i4></value>
 
</params>
 
</methodcall>

requests发送json

1、导入requests库

2、找到请求地址,填写body

import requests
url ="http://httpbin.org/post"
# 添加json数据
json = {
    "username":"AnJing",
    "password":"123456"
}
# 通过json方式添加数据
r =requests.post(url,json=json)
print(r.text)

3、发送请求,查看返回内容

通过返回的内容我们可以看出参数的数据类型为json

细心的小伙伴们可以能回发现json请求方式和data请求的方式是一样的,不同的就是所请求的参数类型不一样。

通过简单的接口,了解到了如何发送json请求,小伙伴们快去动手试试吧。

写在最后

PS:这套软件测试的自学教程合集,对于在测试行业发展的小伙伴们来说应该会很有帮助。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。


http://www.kler.cn/a/135137.html

相关文章:

  • change buffer:到底应该选择普通索引还是唯一索引
  • Linux——GPIO输入输出裸机实验
  • Centos安装Elasticsearch教程
  • [Linux] Linux信号捕捉
  • C++中string的新特性
  • 基于Python的网上银行综合管理系统
  • java 实现发送邮箱,复制即用,包含邮箱设置第三方登录授权码获取方法
  • 如果K8s出现问题,你可以从这9个方面排查
  • 深入理解 synchronized 原理
  • Pytorch plt.scatter()函数用法
  • 【机器学习算法】机器学习:支持向量机(SVM)
  • 解决ubuntu23.10 wifi不能使用的问题
  • python functools.wraps保留被装饰函数属性
  • 王颖奇:ONES.ai 上线,以及我的一些思考
  • josef约瑟 闭锁继电器 LB-7DG 100V 50HZ 导轨安装
  • Git常用指令-1
  • Spring Boot 项目的常用注解与依赖
  • Nginx快速入门教程,域名转发、负载均衡
  • 米贸搜| 关于Facebook企业户的那些事
  • 【C/C++】递归算法
  • el-table固定表头(设置height)出现内容过多时不能滚动问题
  • C# 依赖注入IServiceCollection
  • 制作Go程序的Docker容器(以及容器和主机的网络问题)
  • 使用持久卷部署 WordPress 和 MySQL
  • linux如何重置root密码
  • go语言学习-数据结构