引入可設定的 HTTP 用戶端
RAPID SDK 建構在 OkHttpClient 之上,不開放供您配置和調整。最近,我們 意識到您需要根據需要調整和最佳化 HTTP 用戶端。因此,為了讓使用 Rapid SDK 的開發人員能夠更好地控制 SDK 的底層 HTTP 用戶端,我們引入了一個新的建構器,您可以使用它來傳遞 自己的 HTTP 用戶端,以便 SDK 在內部使用。
使用此建構器,您可以使用自己的配置來建立 HTTP 用戶端並將其傳遞給 SDK,甚至傳遞您已在應用程式中使用的 用戶端。
在配置 HTTP 用戶端和使用預設客戶端之間進行選擇
使用 SDK 提供的預設客戶端是開始使用 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()
.key("YOUR_API_KEY")
.secret("YOUR_API_SECRET")
.okHttpClient(customClient)
.build();
3. 進行 API 呼叫:使用配置的 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);