OAuth 2.0 인증
Rapid API 구현을 위한 OAuth 2.0 인증 설정하기
Lodging API를 제외한 모든 Rapid API는 OAuth 2.0 인증 절차를 사용합니다. 이 정보는 다음 대상에 적용됩니다:
- Rapid 렌터카 API
- Rapid Flight API
- Rapid 액티비티 API
- Rapid 자동 완성 API
참고: Lodging API의 스키마에는 서명 인증이 포함되어 있지만, Lodging과 함께 자동 완성 API를 사용하려면 OAuth 2.0 인증도 함께 포함해야 합니다.
권한 설정
OAuth 2.0 인증에는 액세 스 토큰이 필요합니다. 액세스 토큰을 얻으려면 API 자격 증명을 사용하여 익스피디아 게이트웨이에 요청을 보내야 합니다. 인증 정보의 두 부분이 결합되어 Base64로 인코딩된 후, Authorization 접두사가 붙은 Basic 헤더로 전송됩니다. e.gBasic <base64>..
예시: 자격 증명을 Base64 형식으로 인코딩하세요
var client-id = postman.getEnvironmentVariable("client-id");
var client-secret= postman.getEnvironmentVariable("client-secret");
var base64Hash = CryptoJS.enc.Utf8.parse(client-id + ":" + client-secret);
var base64 = CryptoJS.enc.Base64.stringify(base64Hash);
postman.setEnvironmentVariable("base64",base64);불투명한 액세스 토큰 가져오기
API 요청을 보내기 전에 불투명한 액세스 토큰(즉, 사용자나 리소스에 대한 정보가 전혀 포함되지 않은 토큰)이 필요합니다.
요청 예시
POST – https://api.ean.com/identity/oauth2/v3/token
Header:
Key: ‘Authorization’
Value: ‘Basic {base64}’답변 예시
{
"access_token": "p1xy6rxahicQPUIX_Sq6a52yFnHXpX3ImaSX9sKiUI4:XM8qZiTr1HPDc8FgBE5HLvFTFdICuRFV0-l7gFWI-WU",
"token_type": "bearer",
"expires_in": 1800,
"scope": "demand-solutions.demand-api-wrappers-playground.all"
}불투명 액세스 토큰 사용
이제 access_token 를 확보했으니, 이를 사용하여 자동 완성, Geography, Cars 등 OAuth 2.0을 지원하는 모든 엔드포인트에 요청을 보낼 수 있습니다.
GET - https://test.ean.com/v3/regions?include=standard&language=en-US&iata_location_code=SEA
Header:
Key: 'Authorization'
Value: 'Bearer {access_token}'