gpt4 book ai didi

python - requests.post 的 `data` 和 `json` 命名参数有什么区别?

转载 作者:太空宇宙 更新时间:2023-11-03 13:09:28 27 4
gpt4 key购买 nike

根据requests library documentation的相关部分,将字典传递给 post 方法的主要方法如下:

r = requests.post(url, data = {"example": "request"})

随后,作者演示了将 JSON 字符串直接传递给 Github API 的示例。然后作者建议,不要将字典编码为 JSON 字符串并通过 data 传递,您可以简单地使用命名参数 json 传递字典,如下所示。

r= requests.post(url, json = {"example": "request"})

你什么时候会使用 json 而不是 data?这种冗余是特异的还是故意的?

最佳答案

dict 传递给 data 会导致 dict表单编码,就像您正在提交一样HTML 页面上的表单;例如,data={"example": "request"} 将作为 example=request 在请求正文中发送。另一方面,json 关键字将其参数编码为 JSON 值(并将 Content-Type header 设置为 application/json).

关于python - requests.post 的 `data` 和 `json` 命名参数有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47188244/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com