我正在尝试将cURL转换为,但没有工作。
cURL: curl -kv -H 'Content-Type: application/json' 'https://IP-address/api/v1/login' -d '{"username":"api", "password":"APIPassword"}'
我的Python请求代码:
import requests
url = "https://IP-address/api/v1/login"
payload = "'{\"username\":\"api\", \"password\":\"APIPassword\"}'"
headers = {
'Content-Type': "application/json",
'cache-control': "no-cache",
}
response = requests.request("GET", url, headers=headers, data=payload, verify=False)
print(response.text)
这不起作用,给我400个错误的请求。
我尝试使用https://curl.trillworks.com/进行转换
这给了我下面的代码,这些代码也不起作用。
import requests
url = 'https://IP-address/api/v1/login'
headers = {
'Content-Type': 'application/json',
}
data = '{"username":"api", "password":"APIPassword"}'
output = requests.get(url, data=data, verify=False)
print (output)
有谁能帮我确认一下这个问题吗。
编辑:我编辑了第二个脚本以产生输出:这将产生500个错误。
发布于 2017-07-20 06:19:17
对json数据使用requests.post
中的requests.post
参数。它还负责处理标头。
data = {"username":"api", "password":"APIPassword"}
response = requests.post(url, json=data, verify=False)
发布于 2020-01-24 17:29:35
确保在有效负载中发送有效JSON的另一种方法是使用json
python库通过json.dumps()
格式化您的有效负载,它从对象返回一个表示json对象的字符串。当我需要在负载中发送一个嵌套的json对象时,这对我特别有用。
import json
import requests
url = 'https://sample-url.com'
headers = { 'Content-Type': 'application/json', 'Authorization': f'{auth_key}'}
payload = { "key": "value",
"key": ["v1", "v2"],
"key": {
"k": "v"
}
...
}
r = requests.post(url, headers=headers, data=json.dumps(payload))
https://stackoverflow.com/questions/45206380
复制相似问题