在获得代理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
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
while (iterator.hasNext()) {
Map.Entry<String, List
List
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... [阅读全文]
最新标签
推荐阅读
07
2019-11
正向代理、反向代理的对比
代理服务器可以分为正向代理、反向代理,使用的时候,大家可能感受不出来具体有什么不同。但是这两种其实存在不少差异,使用场景也不一样。
22
2019-10
想要换IP就找黑洞代理
做爬虫IP被禁?做推广账号被封?如果你有遇到类似的情况,意味着你有换IP的需求,有些网站还会限制一个IP地址只能够注册一个账号,所以,如果你想要提高工作效率跟质量,需要掌握高速换IP
28
2020-03
http代理服务器的安全使用
看到现在网络上面铺天盖地的代理ip宣传,大家只要经过搜索引擎搜索,就可以找到很多不同的代理ip服务商。
14
2020-02
代理ip在账号注册上的影响
关于代理ip,我们要明白ip代理在网络上的作用是非常显著的,但是对于普通用户而言,可能这个感受没有那么的强烈。下面,我们来看看http代理的使用。
热门文章
公众号
关注公众号,免费领试用