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}'