您的位置: 首页 > 新闻资讯 > 正文

单次代理IP设置使用方法

发布时间:2019-10-26 16:30:09 来源:

在获得代理IP之后,我们要怎么进行设置对其进行使用呢?黑洞代理下面带来了单次代理的设置教程,大家可以通过这个教程的步骤来进行学习。


单次代理IP设置使用方法


设置代理教程:


单次代理


单次代理表示只在这一次连接中有效,即每次都需要代理。


http方式的代理非常简单,在URL对象的openConnection方法中加上个Proxy对象即可


Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(ipBean.getIp(), ipBean.getPort()));


connection = (HttpsURLConnection) new URL(url).openConnection(proxy);


https 稍微复杂点了,中间加上了ssl协议


/**


* @param url


* @param headerMap 请求头部


* @param ipBean


* @return


* @throws Exception


*/


public static String getResponseContent(String url, Map<String, List<String>> headerMap, IPBean ipBean) throws Exception {


HttpsURLConnection connection = null;


// 设置代理


if (ipBean != null) {


Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(ipBean.getIp(), ipBean.getPort()));


connection = (HttpsURLConnection) new URL(url).openConnection(proxy);


if (ipBean.getType() == IPBean.TYPE_HTTPS) {


SSLContext sslContext = SSLContext.getInstance("SSL");


sslContext.init(null, new TrustManager[], new java.security.SecureRandom());


connection.setSSLSocketFactory(sslContext.getSocketFactory());


connection.setHostnameVerifier(new TrustAnyHostnameVerifier());


}


}


if (connection == null)


connection = (HttpsURLConnection) new URL(url).openConnection();


// 添加请求头部


connection.setRequestProperty("User-Agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36");


if (headerMap != null) {


Iterator<Map.Entry<String, List<String>>> iterator = headerMap.entrySet().iterator();


while (iterator.hasNext()) {


Map.Entry<String, List<String>> entry = iterator.next();


List<String> values = entry.getValue();


for (String value : values)


connection.setRequestProperty(entry.getKey(), value);


}


}


InputStream inputStream = connection.getInputStream();


BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));


StringBuilder stringBuilder = new StringBuilder();


String line;


while ((line = reader.readLine()) != null) {


stringBuilder.append(line);


}


reader.close();


inputStream.close();


return stringBuilder.toString();


}


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;


}


}


以上,我们就实现了单次代理的操作。大家如果对代理IP的使用还有疑惑,可以联系黑洞代理客服进行解答。


相关文章内容简介

1 单次代理IP设置使用方法

  在获得代理IP之后,我们要怎么进行设置对其进行使用呢?黑洞代理下面带来了单次代理的设置教程,大家可以通过这个教程的步骤来进行学习。  设置代理教程:  单次代理  单次代理表示只在这一次连接中有效,即每次都需要代理。  http方式的代理非常简单,在URL对象的openConnection方法中加上个Proxy对象即可  Proxy∵proxy∵=∵new∵Proxy(Proxy.Type... [阅读全文]

最新标签