Configurer un proxy explicite dans AsyncHttpClient 2.x
Définissez un ProxyServer dans une configuration AsyncHttpClient 2.12.4 avant de construire le client, avec un choix réfléchi concernant la découverte des propriétés JVM.
DefaultAsyncHttpClientConfig.Builder config = Dsl.config()
.setProxyServer(
new ProxyServer.Builder("proxy.example", 8080))
.setRequestTimeout(15000);
try (AsyncHttpClient client = Dsl.asyncHttpClient(config)) {
Response response = client.prepareGet("https://www.example.com/")
.execute().toCompletableFuture().join();
System.out.println(response.getStatusCode());
}
Il s'agit de l'API org.asynchttpclient 2.12.4, avec ProxyServer dans son paquet proxy. Pour cet exemple HTTPS public, remplacez l'intermédiaire par un candidat non authentifié de la liste de proxys HTTP et configurez le site séparément. La configuration est fournie avant la construction du client, et le budget de 15 secondes pour la requête fait partie de ce montage.
L'exemple attend le future pendant la durée de vie du client. Une application asynchrone peut plutôt le composer, mais doit conserver le client jusqu'à la fin du travail qui lui est confié.
Si les propriétés JVM prises en charge constituent la source de politique voulue, sélectionnez setUseProxyProperties(true) explicitement. Une propriété présente dans un runtime ne prouve pas que chaque client y a souscrit.
Les anciens exemples Dispatch enveloppent souvent com.ning et utilisent une autre propriété d'activation. Alignez-vous sur les imports et l'API du client sous-jacent plutôt que de mélanger cette configuration avec ce constructeur 2.x.