AWS SDK Java 2:UrlConnectionHttpClient 的 SQS 代理设置
将配置好的 UrlConnectionHttpClient builder 传给 AWS SDK for Java 2 的同步 SQS 客户端。
在 AWS SDK for Java 2 中,配置同步 SQS 客户端所使用的 HTTP 实现。可以用显式中介构建 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 端点。当中介需要认证时,在 ProxyConfiguration builder 上添加用户名和密码。
把 HTTP 客户端 builder 交给服务 builder,可以让 SDK 管理所生成的 HTTP 客户端的生命周期。工作结束后关闭 sqs。若应用改为提供一个已经构建好的 HTTP 客户端,则由该应用负责这个共享客户端的生命周期。
AmazonSQSClientBuilder 和 ClientConfiguration 的示例属于 SDK Java 1。请让导入和传输 builder 与应用所用的 SDK 主版本保持一致。