requests中post的data
时间: 2024-02-02 15:07:15 浏览: 71
在requests中,post方法的data参数用于传递需要发送的数据。根据参数的类型不同,data的处理方式也会有所不同。如果data参数是一个字符串,则会进行url编码,并且Content-Type的值为None。如果data参数是一个字典、元组组成的列表或者列表作为值的字典,则同样会进行url编码,Content-Type的值为application/x-www-form-urlencoded。下面是一些示例代码:
1. 字符串作为data参数:
```
payload = {'key1': 'value1', 'key2': 'value2'}
headers={"Content-Type": "application/json"}
r = requests.post("https://httpbin.org/post", headers=headers, data=json.dumps(payload))
```
2. 字典作为data参数:
```
payload1 = {'key1': 'value1', 'key2': 'value2'}
r = requests.post("https://httpbin.org/post", data=payload1)
```
3. 元组组成的列表作为data参数:
```
payload2 = [('key1', 'value1'), ('key1', 'value2')]
r = requests.post("https://httpbin.org/post", data=payload2)
```
4. 列表作为值的字典作为data参数:
```
payload3 = {'key1': ['value1', 'value2']}
r = requests.post("https://httpbin.org/post", data=payload3)
```
阅读全文