按apache官方javaAPI提供应该按如下方式创建代理
Socket socket = new Socket(new Proxy(Proxy.Type.SOCKS,new InetSocketAddress("10.161.32.26",8080)));
try {
socket.connect(new InetSocketAddress("http://www.baidu.com",80));
System.out.println(socket.isConnected());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
10.161.32.26局域网代理ip,8080局域网代理端口
但是很不幸,此种方法我试过,米有用,总是报错java.net.SocketException: Software caused connection abort: recv failed;
socket【如果不符合,自己在封装下吧】方式
- //以下地址是代理服务器的地址
- Socket socket = new Socket("10.1.2.188", 80);
- //写与的内容就是遵循HTTP请求协议格式的内容,请求百度
- socket.getOutputStream().write(new String("GET http://www.baidu.com/ HTTP/1.1\r\n\r\n").getBytes());
- byte[] bs = new byte[1024];
- InputStream is = socket.getInputStream();
- int i;
- while ((i = is.read(bs)) > 0) {
- System.out.println(new String(bs, 0, i));
- }
- is.close();
懒了,剩下的直接发链接
http://b-l-east.iteye.com/blog/1199237