Este tema describe cómo configurar un proxy en el SDK V1.0.
Tipos de proxy
Es posible usar proxies HTTP y HTTPS. El proxy HTTP se utiliza para las solicitudes HTTP, mientras que el proxy HTTPS se usa para HTTPS requests. Después de configurar un proxy, también puede indicar al SDK que lo omita en productos específicos de Alibaba Cloud que no requieren este tipo de acceso.
Métodos de configuración
El SDK ofrece dos métodos para configurar un proxy:
-
Usar variables de entorno:
HTTP_PROXYohttp_proxy: especifica la dirección del servidor proxy HTTP.HTTPS_PROXY: especifica la dirección del servidor proxy HTTPS.NO_PROXY: especifica una lista de direcciones para omitir el proxy. Separe varias direcciones con comas. Se admiten nombres de dominio y direcciones IP.
-
Configurar en el código: utilice la clase
com.aliyuncs.http.HttpClientConfigpara configurar el proxy. Esta clase proporciona los siguientes métodos:setHttpProxy(): especifica la dirección del servidor proxy HTTP.
setHttpsProxy(): especifica la dirección del servidor proxy HTTPS.
setNoProxy(): especifica una lista de direcciones para omitir el proxy. Separe varias direcciones con comas. Se admiten nombres de dominio y direcciones IP.
public static void main(String[] args) { com.aliyuncs.http.HttpClientConfig clientConfig = com.aliyuncs.http.HttpClientConfig.getDefault(); // Set the HTTPS proxy. You must also set the ProtocolType. clientConfig.setHttpsProxy("http://user:password@127.0.0.1:8989"); clientConfig.setProtocolType(com.aliyuncs.http.ProtocolType.HTTPS); // Set the HTTP proxy. clientConfig.setHttpProxy("http://127.0.0.1:9898"); // Set the list of addresses to bypass the proxy. clientConfig.setNoProxy("ecs-cn-hangzhou.aliyuncs.com,dysmsapi.aliyuncs.com"); com.aliyuncs.profile.DefaultProfile profile = com.aliyuncs.profile.DefaultProfile.getProfile( "<REGION_ID>", // Obtain the AccessKey ID of the RAM user from an environment variable. System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), // Obtain the AccessKey secret of the RAM user from an environment variable. System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET") ); profile.setHttpClientConfig(clientConfig); com.aliyuncs.IAcsClient client = new com.aliyuncs.DefaultAcsClient(profile); // The code for calling the API is omitted. }
Referencias
Para obtener más información, consulte HTTP Proxy Configuration Best Practices.