[英]Connection reset by peer w/ Python's Request Module. Curl and Postman work fine.
Python 2.7.10
我正在对gitlab存储库进行非常基本的API调用。
我可以成功curl
端点,并且可以用Postman
成功调用它
但是,在尝试使用Python的请求模块时失败。
卷毛作品:
curl https://gitlab.example.com/api/v4/projects
但是,当我通过请求提交时: [证书是自签名的,因此verify = False]
r = requests.get("https://gitlab.example.com/api/v4/projects", verify=False)
引发错误:
Traceback (most recent call last):
File "./repo_analyzer.py", line 36, in <module>
r = requests.get("https://xxxxxxxxxxxx/api/v4/projects", verify=False)
File "/Library/Python/2.7/site-packages/requests/api.py", line 72, in get
return request('get', url, params=params, **kwargs)
File "/Library/Python/2.7/site-packages/requests/api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 508, in request
resp = self.send(prep, **send_kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 618, in send
r = adapter.send(request, **kwargs)
File "/Library/Python/2.7/site-packages/requests/adapters.py", line 490, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', error(54, 'Connection reset by peer'))
我有点不知道为什么它不能与python一起使用,但可以正常工作。
在搜索了大量关于此的博客和帖子之后,似乎我需要通过pip更新request [security]程序包。
我在运行pip install -U requests[security]
和sudo pip install -U requests[security]
时遇到错误,所以我从头开始:
pip install requests
pip install -U requests
pip install -U requests[security]
之后,通话成功。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.