当前位置: 首页 > 后端技术 > Python

Python接口测试requests.post方法中data和json参数的区别

时间:2023-03-25 21:02:19 Python

post请求消息可以同时传data和json。而data和json既可以是str类型也可以是dict类型。json和数据参数规则:1.JSON1.使用json参数,不管消息是str类型还是dict类型,如果headers中不指定content-type的类型,默认是application/json。2.数据1。使用data参数,消息是dict类型。如果不指定headers中content-type的类型,默认的application/x-www-form-urlencoded相当于普通表单提交的形式,表单中的内容会被data转换成key-值对。此时可以从request.POST获取数据,request.body的内容为a=1&b=2的形式。注意:即使指定了content-type=application/json,request.body的值也类似a=1&b=2,所以不能用json.loads(request.body.decode())得到想要的值.2.使用data参数,消息是str类型,如果不指定headers中content-type的类型,默认是application/json。总结一下,两个参数的使用:当用data参数提交数据时,request.body的内容是a=1&b=2的形式;使用json参数提交数据时,request.body的内容是这种形式的'{"a":1,"b":2}'