我一直试图通过python(2.7和3.5)做一个简单的授权请求,例如。
import requests
requests.get('https://sub-domain.chargify.com/subscriptions.json', auth=('my-authorization-key', 'x'))
我收到以下错误
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='sub-domain.chargify.com', port=443): Max retries exceeded with url: /subscriptions.json (Caused by <class 'socket.error'>: [Errno 54] Connection reset by peer)
但如果我做一个卷曲调用,一切正常
curl -u my-authorization-key:x https://sub-domain.chargify.com/subscriptions.json
我甚至尝试使用urllib2路由获得与请求类似的响应。要求朋友在他的计算机上为我运行请求代码,它工作得很好。唯一的区别是他正在使用更新版本的请求,所以我更新了我的版本没有工作。去了一个服务器并尝试了完全相同的上述步骤,一切正常,使用请求的错误只在我的mac中。我在我的机器上更新了python 2.7和3.6,认为这可能是原因但仍然有相同的结果
关于它可能是什么的任何想法?
答案 0 :(得分:0)
来自请求依赖项: pyOpenSSL,支持的OpenSSL版本是1.0.1 1.0.2 1.1.0
检查openssl版本并更新,然后对其进行符号链接。
openssl version
brew update
brew install openssl
brew link --force openssl