4-请求中的数据格式

本文详细介绍了接口测试中两种常见的请求正文格式——JSON和表单格式。JSON是一种轻量级的数据交换格式,包含对象和数组结构,其key必须用双引号,而表单格式则是键值对形式,不需引号。在Python中,requests库的data参数用于表单格式,json参数用于JSON格式。理解这两种格式对于进行有效的接口测试至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在接口测试中,请求正文的排版格式有JSON格式和表单格式,这两种格式并不是某语言的数据类型,可理解为一种排版格式

JSON格式

 JSON是存储和交换文本信息的语法,类似于XML,但比XML更小、更快、更易解析

JSON的两种结构:

  • 对象:由花括号{}表示,对象由属性组成,属性由键值对(key:value)组成,多个属性之间用逗号隔开。其中键必须由双引号引起来。如:{“a”:1,“b”:2}
  • 数组:由中括号[]表示,数组由单独的value组成。如:[12,‘abc’,“哈喽”,false,null,]

JSON的四种基本类型:字符串、数字、布尔值、null
其中,值为字符串时,必须用双引号引起来。true/false/null必须小写

JSON嵌套
JSON对象或JSON数组的value可以是另一个对象或数组,如:

  • 对象套数组:{“姓名”:“Marry”,“成绩单”:[60,70]}
  • 对象套对象:{“姓名”:“Marry”,“成绩单”:{“中文”:60,“数学”:70}}
  • 数组套对象:[60,70,{“英文”:80}]
  • 数组套数组:[60,70,[“哈哈”,“Marry”]]

JSON与python的字典区分

  • JSON的key只能用双引号,python的key可以用单引号、双引号、三引号

  • JSON的value类型只能是:字符串、数字、布尔值、空值、对象、数组;
    python的value类型可为:字符串、数字、布尔值、列表、元组、字典、空值

  • python中,JSON格式的字符串可通过 json.loads(str) 转化为字典

  • python中,JSON格式的字典可通过 json.dumps(str) 转化为字符串

表单格式

 表单格式又叫form格式,或x-www-form-urlencodeed格式。由键值对(key=value)组成,多个键值对之间使用&连接,且键值对不需要引号
如:name=Marry&Score=60

当出现两种格式混用时,如 name=Marry&Score={“中文”:60,“数学”:70},仍然是表单格式

不同的数据格式在python请求中用法

python中使用requests发请求时,有请求正文时需要指定数据格式。一般有data、json、files、params 。

  • data: 请求体是表单格式的使用,即请求头中Content-Type: application/x-www-form-urlencoded时,使用data来传请求正文
    如:requests.post(url,data={“name”:“Marry”,“pwd”:123456})
  • json:请求体是json格式的使用,即请求头中Content-Type:application/json时,使用json来传请求正文
    如:requests.post(url,json={name=Marry&pwd=123456})
  • files: 文件上传接口使用
  • params: 一般get请求使用的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值