java通过代理访问外网https

//通过代理访问外网https 
public class Test99999 extends Thread{
   
  public static void main(String[] args) throws Exception {
  //设置代理
String proxy = "openproxy.huawei.com";
int port = 8080;
System.setProperty("proxyType", "4");
  System.setProperty("proxyPort", Integer.toString(port));
  System.setProperty("proxyHost", proxy);
  System.setProperty("proxySet", "true");
 
  String url="https://www.smics.com/";
  SSLContext sc = SSLContext.getInstance("SSL");
   
  //指定信任https
  sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
  URL console = new URL(url);
  HttpsURLConnection conn = (HttpsURLConnection) console.openConnection();
  conn.setSSLSocketFactory(sc.getSocketFactory());
  conn.setHostnameVerifier(new TrustAnyHostnameVerifier());
  conn.connect();
  System.out.println("返回结果:"+conn.getResponseMessage());
   
  InputStream is = conn.getInputStream();
  BufferedReader reader = new BufferedReader(new InputStreamReader(is));
  String curLine="";
  while ((curLine = reader.readLine()) != null) {
  System.out.println(curLine);
  }
  is.close();
  }
   
   
   
   
   
  private static class TrustAnyTrustManager implements X509TrustManager {
 
  public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
  }
  public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
  }
   
  public X509Certificate[] getAcceptedIssuers() {
  return new X509Certificate[]{};
  }
  }
   
  private static class TrustAnyHostnameVerifier implements HostnameVerifier {
  public boolean verify(String hostname, SSLSession session) {
  return true;
  }
  }

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值