由於3天前的Pushbullet Kodi addon停止工作,引發此錯誤:Pushbullet和EOF發生違反協議(_ssl.c:590)的
EOF發生違反協議(_ssl.c:590)
GET通過httplib2完成,您可以看到簡單代碼there。
奇怪的是,還與OpenSSL的CLI我得到錯誤:
$ openssl s_client -connect api.pushbullet.com:443
CONNECTED(00000003)
140625036449432:error:140790E5:SSL routines:ssl23_write:ssl handshake failure:s23_lib.c:177:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 307 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1481297548
Timeout : 300 (sec)
Verify return code: 0 (ok)
---
信息:
$ openssl version
OpenSSL 1.0.2j 26 Sep 2016
$ uname -a
Linux meanmachine 4.8.11-1-ARCH #1 SMP PREEMPT Sun Nov 27 09:26:14 CET 2016 x86_64 GNU/Linux
感謝您的建議!
編輯:
的代碼扔在Python2.7錯誤:
import httplib2
h = httplib2.Http()
h.request('https://api.pushbullet.com/v2/devices', method='GET')
回溯(最近通話最後一個):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/httplib2/__init__.py", line 1609, in request
(response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
File "/usr/lib/python2.7/site-packages/httplib2/__init__.py", line 1351, in _request
(response, content) = self._conn_request(conn, request_uri, method, body, headers)
File "/usr/lib/python2.7/site-packages/httplib2/__init__.py", line 1272, in _conn_request
conn.connect()
File "/usr/lib/python2.7/site-packages/httplib2/__init__.py", line 1036, in connect
self.disable_ssl_certificate_validation, self.ca_certs)
File "/usr/lib/python2.7/site-packages/httplib2/__init__.py", line 80, in _ssl_wrap_socket
cert_reqs=cert_reqs, ca_certs=ca_certs)
File "/usr/lib/python2.7/ssl.py", line 933, in wrap_socket
ciphers=ciphers)
File "/usr/lib/python2.7/ssl.py", line 601, in __init__
self.do_handshake()
File "/usr/lib/python2.7/ssl.py", line 830, in do_handshake
self._sslobj.do_handshake()
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:590)
附:就像上python3.5
請在出現錯誤時顯示相關代碼並指出錯誤代碼。我們無法從您運行的外部命令中瞭解有關代碼的任何信息。 – jww
@jww對不起...我添加了一些信息。在我的電腦上,相同的代碼與python v3.5.2一起工作良好...不是用2.7.12 – elbowz