在使用 Android 的HttpUrlConnection
库发出 HTTPS 请求时,我有时会看到以下异常被抛出:
javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x5c1b18a0: I/O error during system call, Connection reset by peer
at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_do_handshake(Native Method)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:395)
...
在深入研究这个问题后,我了解到
- 在wifi上一切正常
- 仅当设备处于移动数据连接时才会引发异常
- 在首先通过 wifi 进行 HTTPS 后,通过移动数据连接往往可以正常工作一段时间
- 该问题似乎发生在少数特定的移动运营商上
会发生什么?某些移动运营商是否会干扰 HTTPS 流量?