java 代理上网

    按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

 

你可能感兴趣的:(java 代理上网)