Skip to main content

使用 OAuth 2.0 访问 OpenAPI

Indexea OpenAPI 需要使用 OAuth 2.0 协议进行身份验证和授权。

首先,从 Indexea 应用设置中创建并获取 OAuth 2.0 客户端凭据。然后,您的客户端应用会从 Indexea 授权服务器请求访问令牌,从响应中提取令牌,然后将该令牌发送到您要访问的 Indexea OpenAPI。

以下内容介绍了 Indexea 支持的 OAuth 2.0 授权情形。

基本步骤

在使用 OAuth 2.0 访问 Indexea API 时,所有应用都会遵循基本模式。概括来讲,您需要完成五个步骤:

1. 创建三方应用

首先访问 Indexea 应用设置进入第三方应用管理:

third-apps

选择创建新的三方应用:

create third app

2. 获取应用 ID 和密钥

创建完应用后,您可以在应用设置中查看应用 ID 和密钥。

提示

请注意,此密钥只显示一次, 请复制并妥善保存。如果你丢失了次密钥,需要重置生成新密钥。

get oauth client id and secret

3. 获取凭据 (Token)

接下来就可以通过 client id 和 client secret 获取访问 OpenAPI 的凭据了。

获取 code

HTTP GET
https://api.indexea.com/oauth/authorize?client_id={client_id}&redirect_uri={redirect_uri}&response_type=code&scope=READ%20WRITE

通过 code 获取 token

调用完上述地址后,您会被重定向到您指定的 redirect_uri,并会携带一个 code 参数。通过捕获这个重定向地址,您可以获取 code 参数。

HTTP POST
https://api.indexea.com/oauth/token?grant_type=authorization_code&code={code}&client_id={client_id}&client_secret={client_secret}

使用 token 调用 OpenAPI

你需要通过 HTTP Header 中的 Authorization 字段提供访问令牌。

curl -X 'GET' \
'http://api.indexea.com/v1/account/profile' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

4. 刷新凭据 (Token)

Indexea 凭据的默认有效期是 24 小时,您需要在凭据过期之前使用 refresh token 来刷新凭据。

HTTP POST
https://api.indexea.com/token?grant_type=refresh_token&code={code}&client_id={client_id}&client_secret={client_secret}