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 호출에 대한 더 나은 분석 정보를 얻으려면 로깅을 구성해 보세요.

이 페이지가 도움이 되었나요?
이 콘텐츠를 어떻게 개선하면 좋을까요?
더 나은 만드는 데 도움을 주셔서 감사합니다!