为 Rapid API 设置 Java SDK

软件开发套件简化了集成,因此您可以快速将产品推向市场

成为合作伙伴并获取凭据

有关详细信息,请参阅 Rapid 入门

Information

注意

Expedia Group 对 Rapid Java SDK 进行了品牌调整。本页面上的信息指的是更名后的 SDK。了解详情


1. 设置 Java 开发环境

您的开发环境需要 Java 8 或更高版本。您可以使用 Apache Maven 或 Gradle 为项目配置 SDK 依赖项。


2. 创建服务客户端并进行配置

如要向 Rapid 端点发出请求,请创建服务客户端,并使用您的凭据对其进行配置。

RapidClient rapidClient =
    RapidClient
        .builder()
        .key("KEY")
        .secret("SECRET")
        .build();
|

(可选)2.1. 配置超时时间

您可以为该服务客户端配置不同的请求、连接和套接字超时时间。


2.1.1. 配置请求超时时间

请求超时时间是指从发出请求开始到响应完成的时间段。 默认值为无限(即,无超时时间)。

RapidClient rapidClient=
    RapidClient
        .builder()
        .requestTimeout(90_000) // 90 seconds
        .key("KEY")
        .secret("SECRET")
        .build();

2.1.2. 配置连接超时时间

连接超时时间是指从发出请求开始到与服务器建立连接的时间段。 默认值为 10000 毫秒(10 秒)。

RapidClient rapidClient=
    RapidClient
        .builder()
        .connectionTimeout(30_000) // 30 seconds
        .key("KEY")
        .secret("SECRET")
        .build();

2.1.3. 配置套接字超时时间

套接字超时时间是指在与服务器交换数据时,两个连续数据包之间的最长不活动时间。 默认值为 15000 毫秒(15 秒)。

RapidClient rapidClient=
    RapidClient
        .builder()
        .socketTimeout(30_000) // 30 seconds
        .key("KEY")
        .secret("SECRET")
        .build();

(可选)2.2. 配置端点

服务客户端也可以被配置为覆写 Rapid API 端点,例如为了使用测试环境。

RapidClient rapidClient =
    RapidClient
        .builder()
        .endpoint("https://test.ean.com/v3/")
        .key("KEY")
        .secret("SECRET")
        .build();

3. 进行 API 调用

服务客户端对 Rapid API 中的每个端点都有一个方法。您可以通过调用带有必要参数的相应方法来访问该端点。

GetAvailabilityOperationParams getAvailabilityOperationParams = GetAvailabilityOperationParams.builder()
        .checkin("YYYY-MM-DD")
        .checkout("YYYY-MM-DD")
        .currency("USD")
        .language("en_US")
        /* ... */
        .build();
GetAvailabilityOperation getAvailabilityOperation = new GetAvailabilityOperation(getAvailabilityOperationParams);
Response<List<Property>> propertiesResponse = rapidClient.execute(getAvailabilityOperation);
System.out.println(propertiesResponse.getData());

异步执行

服务客户端还为每个端点提供异步方法。您可以通过调用带有必要参数的相应异步方法来访问该端点。

GetAvailabilityOperationParams getAvailabilityOperationParams = GetAvailabilityOperationParams.builder()
        .checkin("YYYY-MM-DD")
        .checkout("YYYY-MM-DD")
        .currency("USD")
        .language("en_US")
        /* ... */
        .build();
        
GetAvailabilityOperation getAvailabilityOperation = new GetAvailabilityOperation(getAvailabilityOperationParams);

/*  
    The executeAsync method is used to perform an asynchronous operation with the rapidClient, 
    allowing the application to continue executing other tasks while waiting for the operation to complete.
 */
CompleteableFuture getAvailability = rapidClient.executeAsync(getAvailabilityOperation)
        .thenAccept(response -> System.out.println(response.getData()));

需要更多信息?请查看我们的使用示例 要深入了解 API 调用,请配置日志记录

您觉得这个页面有用吗?
我们该如何改进这些内容?
感谢您帮助我们改进!