Twilio Java SDK 13: configurar un proxy con Apache HttpClient 5
Configure un NetworkHttpClient consciente del proxy y páselo a TwilioRestClient sin reconstruir la capa de solicitudes del SDK.
Twilio Java 13.1.0 acepta un builder de Apache HttpClient 5 en NetworkHttpClient. Configure el proxy de ese builder y luego pase el transporte al cliente del SDK:
import com.twilio.http.NetworkHttpClient;
import com.twilio.http.TwilioRestClient;
import org.apache.hc.client5.http.impl.classic.HttpClientBuilder;
import org.apache.hc.core5.http.HttpHost;
var apacheBuilder = HttpClientBuilder.create()
.setProxy(new HttpHost("http", "proxy.example", 8080));
var transport = new NetworkHttpClient(apacheBuilder);
var twilioClient = new TwilioRestClient.Builder(accountSid, authToken)
.httpClient(transport)
.build();accountSid y authToken son las credenciales de Twilio de la aplicación. El fragmento construye el cliente; úselo en la sobrecarga de la operación del recurso que acepta un cliente, como create(twilioClient).
El esquema http describe la conexión del proxy. La URL de la API de Twilio sigue siendo HTTPS. Para una prueba pública permitida de la API sin cuenta de proxy, una dirección HTTP de la lista de proxies HTTP puede rellenar el host y el puerto del proxy del builder.
Para un proxy autenticado, adjunte un proveedor de credenciales de Apache limitado al host y al puerto del proxy antes de construir NetworkHttpClient. Su cuenta es independiente de la cuenta de la API de Twilio.
Coincida con la generación del cliente de Apache
Las versiones anteriores de Twilio usaban clases de Apache 4 bajo org.apache.http. Apache 5 usa paquetes org.apache.hc y firmas distintas del constructor HttpHost. Compruebe el constructor de NetworkHttpClient en la versión de Twilio elegida por la aplicación antes de adaptar este ejemplo.