如何在Python requests请求中替换curl命令的-u等参数
curl -u参数在Python requests中的对应实现
curl命令里的-u 'username:password'对应HTTP Basic基础身份认证,在requests中可以直接通过auth参数实现,参数值为(用户名, 密码)格式的元组即可。
此外你当前的基础代码还有两处需要调整适配原curl请求:
- 原curl传递的是JSON格式请求体,requests中不要直接将body传给post方法的第二个位置参数,建议使用
json参数传递字典,requests会自动添加Content-Type: application/json请求头,无需手动设置 - 原curl的请求体结构可以直接复制为Python字典填充到body变量中
完整实现代码如下:
import requests url = 'https://instance/rest/api/2/issue/' # 替换为实际的账号密码 username = "your_username" password = "your_password" body = { "fields": { "project": {"key": "key"}, "summary": "REST ye merry gentlemen.", "description": "Creating of an issue using project keys and issue type names using the REST API", "issuetype": {"name": "Bug"} } } response = requests.post( url=url, json=body, auth=(username, password) ) # 可选:调试用输出响应信息 print(response.status_code) print(response.text)
内容的提问来源于stack exchange,提问作者Evan Gertis
相关产品推荐
相关产品推荐

