我们都知道post请求中的body有4种数据类型,今天我们来写一篇关于requests请求json这种数据类型。
数据类型
我们都知道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请求,小伙伴们快去动手试试吧。