2016-09-01 17 views
1

私たちの環境では、HTTPS接続を許可するだけで、外部に接続する唯一の方法であるHTTPSプロキシを提供できます。 。我々は、プロキシのように設定をしましたOkHttpを使用したHTTPSプロキシへの接続

ルートにすべてこのプロキシ経由のトラフィックだけでなく、そのHTTPクライアントとしてOkHttp使用して、当社のJavaアプリケーションを(持っている:

Authenticator proxyAuthenticator = new Authenticator() { 
    @Override 
    public Request authenticate(Route route, Response response) throws IOException { 
     String credential = Credentials.basic(username, password); 
     return response.request().newBuilder() 
       .header("Proxy-Authorization", credential) 
       .build(); 
    } 
}; 

return builder 
     .proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort))) 
     .proxyAuthenticator(proxyAuthenticator) 
     .build(); 

そして、私たちは使用してそれをテストsquid(HTTPプロキシとして)しかし、実際の環境ではプロキシはHTTPではないHTTPS(SSLまたはTLSトンネリング)であることがわかった。wget httpsプロキシを使用するには、次の環境変数を設定します。

export https_proxy='http://domain\user:[email protected]:port' 

しかし、Javaアプリケーションは動作せず、このプロキシを使用してトラフィックをルーティングすることはできません。

ところで、我々はシステムプロパティhttp.proxyHosthttp.proxyPortを設定することにより、プロキシ経由でルーティングするために、すべてのトラフィックをJVMをconfigのできなかった、https.proxyHosthttps.proxyPortなど

Javaアプリケーション用のHTTPSプロキシを設定するために、任意のシンプルで簡単な方法はありますか? HTTPSの場合

+0

多分これはあなたのためです:http://stackoverflow.com/questions/120797/how-do-i-set私がそれがうまくいかないと言ったので、@PeterMmm – PeterMmm

+0

@ -PMMMによって使用されるプロキシ。 –

答えて

関連する問題