使用 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();
}
}
本文提供了使用Java实现Socket客户端通过HTTP和SOCKS代理服务器进行网络通信的代码示例。示例中详细展示了如何创建代理,配置Socket,并通过指定的代理服务器地址和端口进行连接。
885

被折叠的 条评论
为什么被折叠?



