HTTP请求相当于`curl --user`参数?

Ric*_*ard 7 python curl get http

我正在从Mailgun API中检索事件数据.我能够在命令行上运行它并获取数据:

curl -s --user 'api:key-xxxx' https://api.mailgun.net/v3/mydomain.net/events
Run Code Online (Sandbox Code Playgroud)

现在我想用Python和请求编写脚本.我知道可以使用Basic-Auth通过URL获取数据.但是,Mailgun说API密钥应该被视为密码,所以如果可能的话,我不希望直接在URL中公开API密钥.

有什么方法可以curl --user在请求中做相同的操作,提供参数但不在URL中公开它?

或者,尝试curl直接在Python中使用会更好吗?

Dal*_*jia 5

只需将auth=('user', 'passwd')参数添加到get方法,它必须是一个包含2个字符串的元组.

my_req = requests.get('https://api.mailgun.net/v3/mydomain.net/events', auth=('user', 'pass')
Run Code Online (Sandbox Code Playgroud)