В AWS SDK for Java 2 настройте реализацию HTTP, которую использует синхронный клиент SQS. Транспорт UrlConnection можно собрать с явным посредником:

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();

Используйте настройки региона и учётных данных приложения. Транспорт url-connection-client должен быть доступен в проекте вместе с модулем SQS.

URI прокси задаёт посредника; список HTTP-прокси предлагает публичные варианты, а SqsClient по-прежнему обычным образом выбирает свою конечную точку SQS. Добавьте имя пользователя и пароль в builder ProxyConfiguration, если посредник их требует.

Если передать builder сервиса builder HTTP-клиента, SDK управляет жизненным циклом созданного HTTP-клиента. Закрывайте sqs по завершении работы. Приложение, которое вместо этого передаёт уже созданный HTTP-клиент, само отвечает за жизненный цикл этого общего клиента.

Примеры с AmazonSQSClientBuilder и ClientConfiguration относятся к SDK Java 1. Согласуйте импорты и builder транспорта с основной версией SDK, которую использует приложение.

Похожие статьи