1. 程式人生 > >okhttp本地代理demo(通過本地的SS二次代理訪問外網)

okhttp本地代理demo(通過本地的SS二次代理訪問外網)

import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.util.concurrent.TimeUnit;

import com.squareup.okhttp.Callback;
import com.squareup.okhttp.OkHttpClient;
import com.squareup.okhttp.Request;
import com.squareup.okhttp.Response;


public class demo {
   public static void useProxy(){
      String url="https://twitter.com/";
      OkHttpClient client = new OkHttpClient();
      client.setProxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 1080)));
      client.setReadTimeout(15, TimeUnit.SECONDS);
      client.setConnectTimeout(15, TimeUnit.SECONDS);
      client.setWriteTimeout(15, TimeUnit.SECONDS);
      Request request = new Request.Builder()
            .url(url)
             .build();
      client.newCall(request).enqueue(new Callback() {
         public void onFailure(Request request, IOException e) {
         
         
         }
         public  void onResponse(Response response)  {
            String str="";
            try {
               str = response.body().string();
            } catch (IOException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
            }
            System.out.println(str);
         }
      });
   }
   
   public static void main(String[] args){
      useProxy();
   }
   
}