可配置的 HTTP 客户端
概述
Rapid SDK 使用底层 HTTP 客户端来执行 API 调用。为了让开发者对 HTTP 客户端拥有更多控制权,我们提供了一个构建器,可以使用该构建器将您自己的 HTTP 客户端传递给 SDK 使用。使用此构建器,您可以构建具有您自己的配置的 HTTP 客户端并将其传递给 SDK,甚至可以传递您在应用程序中已经使用的客户端。
配置 HTTP 客户端与使用默认客户端
使用提供的默认客户端是开始使用 SDK 的最简单方法。但是,配置您自己的 HTTP 客户端将为您带来以下好处:
- 优化: Fine-tune 客户端可实现更好的性能,例如连接池、超时和重试。
- 集成: 使用应用程序中已配置和测试过的现有 HTTP 客户端。
因此,如果您希望优化 SDK 以获得更好的性能或将其与现有的 HTTP 客户端集成,那么配置您自己的 HTTP 客户端是最佳选择。
如何配置 HTTP 客户端
要配置 HTTP 客户端,您需要创建一个 OkHttpClient 实例并将其传递给 RapidClient 构建器。
1. 使用您的配置创建 OkHttpClient 实例。您可以使用现有实例,也可以创建一个新实例。
示例:
OkHttpClient customClient = new OkHttpClient.Builder()
.connectTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.build();有关配置 OkHttpClient 的更多信息,请参阅 OkHttp 文档。
2. 将 OkHttpClient 实例传递给 RapidClient 构建器 builderWithHttpClient。
示例:
RapidClient rapidClient = RapidClient.builderWithHttpClient()
.okHttpClient(customClient)
.key("YOUR_API_KEY")
.secret("YOUR_API_SECRET")
.build();3. 使用配置好的 rapidClient 像往常一样进行 API 调用。
示例:
GetAvailabilityOperationParams getAvailabilityOperationParams = GetAvailabilityOperationParams.builder()
.checkin("YYYY-MM-DD")
.checkout("YYYY-MM-DD")
.currency("USD")
.language("en_US")
/* ... */
.build();
GetAvailabilityOperation operation = new GetAvailabilityOperation(params);
Response<List<Property>> response = rapidClient.execute(operation);