python接口自动化(二十三) data和json参数传参,怎么区分呢?

前言

在发post请求的时候,有时候body部分要传data参数,有时候body部分又要传json参数,那么问题来了:到底什么时候传json,什么时候传data?

一、识别json参数

1.post请求的body通常有四种类型,最常见的就是json格式了。

 2.用抓包工具查看,首先点开Raw去查看body部分,如下图这种,参数最外面是大括号{ }包起来的,这种已经确诊为json格式了。

 3.再一次确认,可以点开Json这一项查看,点开之后可以看到这里的几组参数是json解析后的。

 4.这时候,就可以传json参数了

d={"id":13444956,
   "postType":1,
   "accessPermission":0,
   "title":"python接口自动化(二十二) multipart/form-data表单提交"}
#d中只是一部分数据
r=requests.post(url,json=d)  

 二、识别data参数

1.data参数也就是这种格式:key1=value1&key2=value2...这种格式很明显没有大括号

点开Raw查看,跟上面的json区别还是很大的。

 

2.因为这个是非json的,所以点开JSON这个菜单是不会有解析的数据的,这种数据在WebForms里面查看。

 3.可以看到这种参数显示在Body部分,左边的Name这项就是key值,右边的Value就是对应的value值,像这种参数转化成python的字典格式就行了。

d={"user_name":"admin",
   "user_pwd":"t5/oMgwUCmO/GeMHBAQ2Cg=="
   }

 4.这一种发post时候就传data参数就可以了,格式如下:

s=requests.session()
r=s.post(url,data=d)

  

越努力,越幸运!!! good good study,day day up!!!
原文地址:https://www.cnblogs.com/canglongdao/p/13445757.html