今天有人问,需要访问HTTPS的网站,作为client访问基于HTTPS的webservices,client这边通过设置以下系统参数,是可以成功的,
System.setProperty("javax.net.ssl.keyStore", keystoreFile);
System.setProperty("javax.net.ssl.keyStorePassword",keystorePassword);
System.setProperty("javax.net.ssl.trustStore", truststoreFile);
System.setProperty("javax.net.ssl.trustStorePassword",truststorePassword);
但是,问题是要作为clinet访问另外一个也是基于HTTPS的web services,当然证书是不一样的, 这时client能再次设置这些系统参数为另外的值么?访问能成功么?
原始帖子看这里: http://topic.csdn.net/u/20090713/10/112488bb-bf45-4f87-93f6-62961fc12ad5.html
我查看了资料并整理了一下,通过Socket可以进行,当然我个人认为httpclient等现成的组件也可以,不过我就不去尝试了,因为我许多时候更喜欢用自己封装的组件。
完整的代码如下: