2016-09-08 9 views
0

Javaを使用してプロキシを使用してhttpリクエストを行い、応答コードを整数変数で取得しようとしています。Javaを使用してプロキシ経由で行われたリクエストのステータスコードを確認してください

私が使用している方法は次のとおりです。

public static int getResponseCode(String urlString, Proxy p) throws MalformedURLException, IOException{ 
URL url = new URL(urlString); 
HttpResponse urlresp = new DefaultHttpClient().execute(new HttpGet(urlString)); 
int resp_Code = urlresp.getStatusLine().getStatusCode(); 
return resp_Code; 
} 

私は、プロキシパラメータを渡していますが、私は要求をしながら、それを使用する方法がわからないです。私はリソースをオンラインで検索しようとしましたが、適切な解決策を見つけることができませんでした。

私は以下のソリューションを試してみましたが、ここで応答コードを取得する方法がわからないでした:

HttpHost proxy = new HttpHost("proxy.com", 80, "http"); 
DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy); 
CloseableHttpClient httpclient = HttpClients.custom() 
       .setRoutePlanner(routePlanner) 
       .build(); 

答えて

1

あなたはこの試みることができる:

URL url = new URL("http://www.myurl.com"); 

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("proxy.com", 8080)); 

// IF NEED AUTH   
//  Authenticator authenticator = new Authenticator() { 
//   public PasswordAuthentication getPasswordAuthentication() { 
//    return (new PasswordAuthentication("username", 
//      "password".toCharArray())); 
//   } 
//  }; 
//  Authenticator.setDefault(authenticator); 

     HttpURLConnection conn = (HttpURLConnection)url.openConnection(proxy); 
     conn.setRequestMethod("GET"); 
     conn.connect(); 

     int code = conn.getResponseCode(); 

     System.out.println(code); 
関連する問題