gpt4 book ai didi

python - 使用 python 发出 POST 请求失败,而使用 curl 发出相同请求成功。我错过了什么?

转载 作者:行者123 更新时间:2023-12-05 05:29:42 34 4
gpt4 key购买 nike

我有以下python代码

import requests

url = 'http://example.com/endpoint'

data = {
"doc": "This is my doc.",
"date": "2022-12-02"
}

headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"id": "12345",
"key": "67890"
}

response = requests.post(url, data=data, headers=headers)

失败并显示代码 400。但是,当我使用 curl 测试相同的请求时

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'id: 12345' --header 'key: 67890' -d '{ \ 
"doc": "This is my doc.", \
"date": "2022-12-02" \
}' 'http://example.com/endpoint'

它成功了。我一定是忽略了一些简单的东西,但我似乎找不到它。

我尝试在请求中使用 json 而不是字典。似乎没有任何效果。

最佳答案

你可以尝试使用json=参数:

import requests

url = "http://example.com/endpoint"

data = {"doc": "This is my doc.", "date": "2022-12-02"}

headers = {
"id": "12345",
"key": "67890",
}

response = requests.post(
url, json=data, headers=headers
) # <-- use json= parameter

print(response.json()) # <-- to get result use .json() method

关于python - 使用 python 发出 POST 请求失败,而使用 curl 发出相同请求成功。我错过了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74881972/

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