使用 HTTP 方式代理
package com.network.client;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.Proxy.Type;
import java.net.Socket;
import java.net.UnknownHostException;
public class SocketClientProxy {
public static void main(String[] args) throws UnknownHostException, IOException {
String proxyIP = "144.51.148.582"; //代理服务器地址
int proxyPort = 3128; //代理服务器端口
//创建代理
Proxy proxy = new Proxy(Type.HTTP, new InetSocketAddress(proxyIP, proxyPort));
//添加代理
Socket socket = new Socket(proxy);
//连接socket服务器地址 10.16.121.31:3089
socket.connect(new InetSocketAddress("10.16.121.31", 3089));
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String line = br.readLine();
System.out.println("来自服务端: "+line);
br.close();
socket.close();
}
}
使用 SOCKS 方式代理
package com.network.client;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.Proxy.Type;
import java.net.Socket;
import java.net.UnknownHostException;
public class SocketClientProxy {
public static void main(String[] args) throws UnknownHostException, IOException {
String proxyIP = "144.51.148.582"; //代理服务器地址
int proxyPort = 3128; //代理服务器端口
//创建代理
Proxy proxy = new Proxy(Type.SOCKS, new InetSocketAddress(proxyIP, proxyPort));
//添加代理
Socket socket = new Socket(proxy);
//连接socket服务器地址 10.16.121.31:3089
socket.connect(new InetSocketAddress("10.16.121.31", 3089));
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String line = br.readLine();
System.out.println("来自服务端: "+line);
br.close();
socket.close();
}
}