注册
登录
 文档中心 产品介绍 开发指南 API接口 代码样例 使用帮助
Java使用jdk调用Socks5代理IP的代码样例
站大爷 官方 2024-01-20 1531 浏览

温馨提示:

1.  http/https网页均可适用

2.  运行环境要求 jdk >= 1.6


import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URL;
import java.util.zip.GZIPInputStream;

public class JavaSocksWhitelist {
	public static void main(String[] args) throws IOException {
		String proxyIp = "159.138.41.125"; // 代理服务器IP
		int proxyPort = 16818;  // 代理服务器端口
		// 要访问的目标网页
		String pageUrl = "https://example.com";

		Proxy proxy = new Proxy(Proxy.Type.SOCKS, new InetSocketAddress(proxyIp, proxyPort));
		URL url = new URL(pageUrl);
		HttpURLConnection httpUrlConnection = (HttpURLConnection) url.openConnection(proxy);
		httpUrlConnection.setRequestMethod("GET");
		httpUrlConnection.setConnectTimeout(5*1000);  // 设置超时时间     
		httpUrlConnection.setRequestProperty("Accept-Encoding", "gzip");  // 添加gzip压缩让数据传输更块

		// 发起请求
		httpUrlConnection.connect();

		// 输出状态码
		System.out.println("code: " + httpUrlConnection.getResponseCode());

		// 读取返回内容
		InputStream inputStream = httpUrlConnection.getInputStream();
		String encoding = httpUrlConnection.getContentEncoding();
		// 处理gzip压缩
		if (encoding.equals("gzip")) inputStream = new GZIPInputStream(inputStream);
		String message = getContentFromInputStream(inputStream);

		// 输出返回内容
		System.out.println(message);

		// 关闭输入流和连接
		inputStream.close();
		httpUrlConnection.disconnect();
	}

	// 读取输入流中的内容
	public static String getContentFromInputStream(InputStream inputStream) throws IOException {
		final int bufferSize = 1024;
		final char[] buffer = new char[bufferSize];
		final StringBuilder out = new StringBuilder();
		Reader in = new InputStreamReader(inputStream, "UTF-8");
		for (;;) {
			int rsz = in.read(buffer, 0, buffer.length);
			if (rsz < 0) break;
			out.append(buffer, 0, rsz);
		}
		return out.toString();
	}
}


立即注册站大爷用户,免费试用全部产品
立即注册站大爷用户,免费试用全部产品