requests模块之post请求传参json和data区别


post请求参数到底是传data还是json,此时要看请求头里的content-type类型

请求头中content-type为application/json, 为json形式,post请求使用json参数

请求头中content-type为application/x-www-form-urlencoded为表单形式,post请求时使用使用data参数

当前接口的请求类型为application/x-www-form-urlencoded,data形式发送post请求

#导入requests模块

import requests

#请求url

url="http://127.0.0.1:8000/user/login"

#请求参数

payload={

    "mobilephone":"1530272****",
    "pwd":"123456"

form表单形式,参数用data

res=requests.post(url,data=payload)

print(res.text)

当前接口的请求类型为application/json,json形式发送post请求

import requests

url='http://127.0.0.1:8000/user/login/'

headers={"content-type":"application/json"}

payload={"username":"vivi","password":"123456"}

res=requests.post(url,json=payload,headers=headers)

print(res.text)

当前接口的请求类型为application/json,简单点用json形式发送post请求,但也可通过data发送需将字典类型转化为json字符串

import requests

import json

payload={"username":"vivi","password":"123456"}

header={"content-type":"application/json"}

#字典转化为json串

data=json.dumps(payload)

url='http://127.0.0.1:8000/user/login/'

res=requests.post(url,data=data,headers=header)

print(res.text)

 

相关