プロキシを使用するように Apache httpcore 4 を設定するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1170795

質問

最新(4.0.1)の Apache http コア コンポーネント ライブラリを使用しようとしています。ただし、私の Web ブラウザはプロキシを経由します。たとえば、それが myproxy.com:9191 であるとします。誰かがこれをプロキシとして使用するための単純な http を取得するためのサンプル コードを提供してもらえませんか?

コードの先頭に次のコードを追加しようとしましたが、うまくいきませんでした。

ProxySelector.setDefault(new ProxySelector() {
  public List<Proxy> select(URI uri) {
    Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("myproxy.com", 9191);
    return Arrays.asList(new Proxy[]{proxy)});
  }
  public void connectFailed(URI uri, SocketAddress sa, IOException ioe) {
    ioe.printStackTrace();
  }
});
役に立ちましたか?

解決

答えが見つからない中で、私が見つけたものは次のとおりです。

まず、この種のことを行うには、http コア ライブラリを使用するだけでなく、 httpクライアント また、ダウンロード ページから両方をダウンロードしてください。

次に、次のコードを使用します。

DefaultHttpClient httpclient = new DefaultHttpClient();
HttpHost proxy = new HttpHost("myproxy.com", 9191);
httpclient.getCredentialsProvider().setCredentials(
  new AuthScope(PROXY, PROXY_PORT),
  new UsernamePasswordCredentials("username", "password"));
httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top