This is an auto-generated translation

OAuth 2.0 身份验证

一些快速 API 使用 OAuth 2.0 身份验证流程而不是签名身份验证。

阅读有关签名认证的更多信息

建立授权

OAuth 2.0 身份验证需要访问令牌。要获取访问令牌,您将使用您的 API 凭证向 Expedia 网关发送请求。您的凭证的两个部分将被合并,Base64 编码,并作为带有 Authorization 前缀 e.g 的 Basic 标头发送Basic <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);

**注意:**如果您的启动管理器提供了 Rapid API 密钥(api_key)或共享密钥(shared_secret),则您可以使用代码示例分别调用client-idclient-secret的密钥。在这种用法中它们可以互换。

获取不透明访问令牌

在发出 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,您可以使用它向任何支持 OAuth 2.0 的端点发出请求,例如输入提示、Geography 和 Cars。

GET - https://test.ean.com/v3/regions?include=standard&language=en-US&iata_location_code=SEA

Header: 
Key: 'Authorization' 
Value: 'Bearer {access_token}'
您觉得这个页面有用吗?
我们该如何改进这些内容?
感谢您帮助我们改进!