可配置的 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);