No AWS SDK for Java 2, configure a implementação HTTP usada pelo cliente SQS síncrono. Um transporte UrlConnection pode ser construído com um intermediário explícito:

import java.net.URI;
import software.amazon.awssdk.http.urlconnection.ProxyConfiguration;
import software.amazon.awssdk.http.urlconnection.UrlConnectionHttpClient;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.sqs.SqsClient;

var httpBuilder = UrlConnectionHttpClient.builder()
    .proxyConfiguration(ProxyConfiguration.builder()
        .endpoint(URI.create("http://proxy.example.net:8080"))
        .build());

var sqs = SqsClient.builder()
    .region(Region.US_EAST_1)
    .httpClientBuilder(httpBuilder)
    .build();

Use a configuração de região e credenciais da aplicação. O transporte url-connection-client deve estar disponível no projeto junto com o módulo SQS.

O URI do proxy identifica o intermediário; a lista de proxies HTTP oferece candidatos públicos, enquanto SqsClient continua escolhendo normalmente o seu endpoint SQS. Adicione nome de usuário e senha ao builder ProxyConfiguration quando o intermediário os exigir.

Entregar um builder de cliente HTTP ao builder do serviço permite que o SDK gerencie o ciclo de vida do cliente HTTP resultante. Feche sqs quando a carga de trabalho terminar. Uma aplicação que, em vez disso, fornece um cliente HTTP já construído é responsável pelo ciclo de vida desse cliente compartilhado.

Os exemplos de AmazonSQSClientBuilder e ClientConfiguration pertencem ao SDK Java 1. Alinhe as importações e o builder de transporte com a versão principal do SDK usada pela aplicação.

Artigos relacionados