类 HTTPSSecureProtocolSocketFactory
java.lang.Object
io.github.mangocrisp.spring.taybct.tool.pki.util.HTTPSSecureProtocolSocketFactory
- 所有已实现的接口:
org.apache.commons.httpclient.protocol.ProtocolSocketFactory
public class HTTPSSecureProtocolSocketFactory
extends Object
implements org.apache.commons.httpclient.protocol.ProtocolSocketFactory
使用HTTPCLIENT时不检测服务器证书是否可信
扩展HttpClient 类实现自动接受证书
因为这种方法自动接收所有证书,因此存在一定的安全问题,所以在使用这种方法前请仔细考虑您的系统的安全需求。具体的步骤如下:
•提供一个自定义的socket factory (test.MySecureProtocolSocketFactory )。这个自定义的类必须实现接口org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory ,在实现接口的类中调用自定义的X509TrustManager(test.MyX509TrustManager) ,这两个类可以在随本文带的附件中得到 •创建一个org.apache.commons.httpclient.protocol.Protocol 的实例,指定协议名称和默认的端口号 Protocol myhttps = new Protocol("https", new MySecureProtocolSocketFactory (), 443);
•注册刚才创建的https 协议对象 Protocol.registerProtocol("https ", myhttps);
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明createSocket
(String host, int port) createSocket
(String host, int port, InetAddress clientHost, int clientPort) createSocket
(String host, int port, InetAddress localAddress, int localPort, org.apache.commons.httpclient.params.HttpConnectionParams params) createSocket
(Socket socket, String host, int port, boolean autoClose)
-
构造器详细资料
-
HTTPSSecureProtocolSocketFactory
public HTTPSSecureProtocolSocketFactory()
-
-
方法详细资料
-
createSocket
public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException -
createSocket
- 指定者:
createSocket
在接口中org.apache.commons.httpclient.protocol.ProtocolSocketFactory
- 抛出:
IOException
UnknownHostException
-
createSocket
public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException, UnknownHostException - 指定者:
createSocket
在接口中org.apache.commons.httpclient.protocol.ProtocolSocketFactory
- 抛出:
IOException
UnknownHostException
-
createSocket
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, org.apache.commons.httpclient.params.HttpConnectionParams params) throws IOException, UnknownHostException, org.apache.commons.httpclient.ConnectTimeoutException - 指定者:
createSocket
在接口中org.apache.commons.httpclient.protocol.ProtocolSocketFactory
- 抛出:
IOException
UnknownHostException
org.apache.commons.httpclient.ConnectTimeoutException
-