我正在尝试使用HttpUrlConnection获取此站点的响应代码。但是我收到异常“握手警报:无法识别的名称” 。
我尝试使用禁用SNI:
System.setProperty("jsse.enableSNIExtension", "false");
此后运行良好,但问题是它禁用了所有站点的SNI。
因此,作为一种解决方法,我尝试首先使用SSL套接字捕获异常,如果该异常显示“握手警报:无法识别的名称”,然后禁用SNI。
但是,为此站点创建SSL套接字会产生错误“ UnknownHost异常” 。
SSLSocketFactory factory = (SSLSocketFactory)SSLSocketFactory.getDefault();
SSLSocket socket = (SSLSocket)factory.createSocket("https://reg.mci.com/service", 443);
socket.startHandshake();
如何解决此站点事先捕获“握手警报:无法识别的名称”异常的问题。