Developer Hub
자동 생성된 번역입니다.

요청 URL 구성하기

요청 URL(부착 모듈에서 결과를 반환하는 URL)은 도메인, 엔드포인트, 요청 매개변수 및 서명 매개변수로 구성됩니다. 이 예시는 2022년 11월 12일에 예약된, 2023년 1월 2일에 출발하여 2023년 1월 12일에 귀국하는 성인 2명의 LAX행 확정 항공편을 보여줍니다.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTLA=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

요청 매개변수 구성

일반적으로 요청 매개변수에는 목적지, 여행 시작일 및 종료일 등 예약 내역에 관한 세부 정보가 포함됩니다. 이 정보는 어태치 모듈에 대한 추천 사항을 생성하는 데 사용됩니다. 요청에서 일부 매개변수는 선택 사항이지만, 결과를 반환하기 위해서는 일부 매개변수가 필수입니다.

Information

중요

보안을 위해 모든 매개변수 값이 percent-encoded UTF-8.

사용 가능한 요청 매개변수

매개변수설명샘플 값필수 항목
partnerIdExpedia에서 제공하는 문자열 값으로, 요청 매개변수에서 귀사의 조직을 식별하는 데 사용됩니다.partnername_hotel_conf_overlay
bookingStatus부속 요금을 적용할 수 있는지 여부를 결정하는 예약 상태를 지정하는 문자열 값입니다. 예약 상태가 ‘보류 중’이거나 ‘실패’인 경우, 부속 요금은 적용되지 않습니다.확정됨
bookingDateTime예약 날짜를 지정하는 문자열 값으로, 날짜, 시간 및 시간대가 ISO 8601 형식2024-08-29T05:54:02

인코딩된 값: 2024-08-29T05%3A54%3A02
outboundEndDateTime목적지 도착을 나타내는 문자열 값으로, ISO 8601 형식의 날짜, 시간 및 시간대가 포함됩니다.2024-08-29T05:54:02

인코딩된 값: 2024-08-29T05%3A54%3A02
returnStartDateTime출발지에서 출발하는 시간을 나타내는 문자열 값으로, ISO 8601 형식의 날짜, 시간 및 시간대가 포함됩니다. 참고: 지정하지 않은 경우, 여행의 기본 기간은 7일입니다.2024-08-29T05:54:02

인코딩된 값: 2024-08-29T05%3A54%3A02
locale익스피디아에서 제공하는 5자 문자열로, 예약이 이루어진 언어를 나타냅니다.
>> 전체 로케일 세부 정보는 여기에서 확인하세요
en_US
currencyCode익스피디아에서 제공하는, 예약 시 사용된 통화를 나타내는 문자열USD
destinationTLA목적지의 국제항공운송협회(IATA) 공항 코드를 나타내는 3자 문자열

참고: 요청 URL에는 이 매개변수(항공편이 포함된 예약의 경우) 또는 latitudelongitude (항공편이 포함되지 않은 경우) 중 하나를 반드시 포함해야 합니다.
LAX조건부 필수
latitude 그리고 longitude여행 목적지의 좌표를 지정하는, 소수점 이하 최대 12자리까지의 부동 소수점 값입니다. 참고: 요청 URL에는 이 매개변수(항공편이 포함되지 않은 경우) 또는 destinationTLA (항공편이 포함된 예약의 경우) 중 하나가 반드시 포함되어야 합니다.위도=40.7141667
&경도=-74.0063889
조건부 필수
signature당사가 제공하는 비밀 키를 기반으로 생성할 27자 길이의 영숫자 문자열 값
BcND1F7KElTyGtyUHeXHd2JJLFs
numOfAdults예약에 포함된 성인 인원을 나타내는 정수; 최소 1명2
numOfChildren예약에 포함된 하위 항목의 수를 나타내는 정수3
childAgesComma-delimited 예약에 포함된 자녀들의 나이를 나타내는 정수 배열; numOfChildren 가 전달된 경우에만 필수입니다.5,4,2네, numOfChildren 가 전달된 경우

간단한 여행과 다소 복잡한 여행 모두에서 해당 수치를 이해하는 데 도움이 되도록 몇 가지 시나리오를 마련해 두었습니다.

|

One-way 여행 예시

one-way 를 호출할 때는 결과 매개변수에 returnStartDateTime 를 포함하지 않습니다. 기본값인 7일이 적용됩니다. 2024년 9월 10일 오후 1시에 시카고를 출발하여 같은 날 오후 4시에 라스베이거스에 도착하는 직항편( one-way )의 경우, 설정값은 다음과 같습니다:

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTLA: LAS
  • outboundEndDateTime: 2024-09-10T16:00:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2024-09-10T12%3A55%3A00%2B08%3A00&destinationTLA=LAS&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-09-01T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Round-trip 예시

2024년 9월 14일에 귀국하는 동일한 출발지와 도착지 간 직항편( round-trip ) 예약 요청의 경우, 다음 조건이 적용됩니다:

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTLA: LAS
  • outboundEndDateTime: 2024-09-10T16:00:00
  • returnStartDateTime: 2024-09-14T18:00:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2024-09-102T12%3A55%3A00%2B08%3A00&returnStartDateTime=2024-09-14T22%3A30%3A00%2B08%3A00&destinationTLA=LAS&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-09-01T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Multi-destination 여행 예시

여러 목적지를 포함하는 여행의 경우, 1구간 여행 정보만 보내주실 것을 권장합니다.

1구간: 시카고에서 라스베이거스까지

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTLA: LAS
  • outboundEndDateTime: 2024-09-10T16:17:00
  • returnStartDateTime: 2024-09-12T13:27:00 (2단계 시작 일시)

2구간: 라스베이거스에서 샌프란시스코까지 (선택 사항)

  • origin: LAS
  • destinationTLA: SFO
  • StartDateTime: 2024-09-12T13:27:00
  • outboundEndDateTime: 2024-09-15T16:10:00

3구간: 샌프란시스코에서 시카고까지 (선택 사항)
  • origin: SFO
  • destinationTLA: ORD
  • StartDateTime: 2024-09-15T16:15:00
  • outboundEndDateTime: 2024-09-19T20:22:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundStartDateTime=2024-09-10T11%3A05%3A00&outboundEndDateTime=2024-09-10T16%3A17%3A00&origin=ORD&destinationTLA=LAS&outboundStartDateTime=2024-09-12T13%3A27%3A00&outboundEndDateTime=2024-09-12T16%3A10%3A00&origin=LAS&destinationTLA=SFO&outboundStartDateTime=2024-09-14T16%3A15%3A00&outboundEndDateTime=2024-09-14T20%3A22%3A00&origin=SFO&destinationTLA=ORD&bookingDateTime=2024-09-01T05:54:02

요청 URL 구성하기

모든 요청 URL에는 도메인과 엔드포인트가 포함되며, 그 뒤에 요청 매개변수가 이어지고, 비밀 키로 생성된 서명으로 끝납니다.

비밀 키

비밀 키는 익스피디아와 안전하게 공유되는 영숫자 문자열로, 거래를 검증하는 서명을 생성하는 데 사용됩니다. 길이는 36자이며, #과 연결되어 있습니다.partnerId.

Warning

참고

비밀 키를 안전한 곳에 보관하고, 서명을 생성할 때에만 사용하십시오. URL을 구성할 때 비밀번호를 매개변수로 전달하지 마십시오.

도메인, 엔드포인트 및 요청 매개변수

요청 URL은 도메인으로 시작합니다. 요청 URL인 protocol-agnostic: 및 //xsell.expedia.com/ 의 경우, 익스피디아 도메인을 그대로 유지하시기를 권장합니다. URL의 다음 부분은 요청 문자열로, case-sensitive 엔드포인트 /xsell-pwa.js? 와 요청 매개변수로 구성됩니다. 요청 매개변수는 #이어야 한다는 점을 기억하세요.UTF-8 percent-encoded.

1단계: 요청 문자열 구성하기

요청 문자열에는 엔드포인트와 요청 매개변수가 포함되지만(도메인은 제외됩니다). 대략 이런 모습이어야 합니다.

/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTLA=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed

2단계: 요청서에 서명하기

1단계에서 얻은 문자열(선두의 / 포함)은 다음으로 서명되어야 합니다. hash-based 메시지 인증 알고리즘 (HMAC-SHA1)을 사용하여 익스피디아와 공유된 비밀 키를 적용합니다. 대부분의 암호화 라이브러리에서 생성된 서명은 이진 형식으로 제공됩니다.

이 암호화 해시 함수는 RFC 2104 컴퓨터 언어 및 프레임워크를 위한. 사용 가능한 구현 방식은 다음과 같습니다:

3단계: 생성된 서명을 인코딩합니다

수정된 것을 사용하여 이진 서명을 인코딩합니다. Base64 URL의 경우, Base64 출력에서 +/ 문자를 각각 - (하이픈)과 _ (밑줄)로 대체하여 URL에서 안전하게 사용할 수 있도록 합니다(참조: RFC 4648 (자세한 내용은). 다음과 비슷하게 보일 것입니다:

bj01fgT85mUiRmzxxSufSmlGpiI

또한, Base64로 인코딩된 문자열에서 패딩 = (있는 경우)을 제거해야 한다는 점도 유의해야 합니다.

4단계: 최종 요청 URL 구성하기

3단계에서 생성한 서명을 1단계의 문자열에 ‘ signature ’ 매개변수로 추가합니다. 서명은 항상 최종 요청 URL의 마지막 매개변수로 지정되어야 합니다.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTLA=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

결과 문자열의 맨 앞에 프로토콜(// 또는 http:// 또는 https://)과 도메인( protocol-agnostic URL의 경우 //xsell.expedia.com 을 권장합니다)을 추가하십시오.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundStartDateTime=2024-10-22T11%3A55%3A00%2B08%3A00&outboundEndDateTime=2024-10-22T13%3A55%3A00%2B08%3A00&returnStartDateTime=2024-10-30T20%3A30%3A00%2B08%3A00&returnEndDateTime=2024-10-30T22%3A30%3A00%2B08%3A00&destinationTLA=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-04-12T12%3A32%3A15%2B08%3A00&bookingId=123ABC&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

5단계: JavaScript 코드를 추가합니다.

모듈이 표시되어야 할 페이지에서 JavaScript src 속성으로 최종 요청 URL을 사용하게 됩니다. 예:

<<script src="//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTLA=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI"></script>>

요청 URL을 생성했다면, 이제 이를 페이지 코드에 통합할 준비가 된 것입니다.

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