身份验证
OAuth2身份验证
Cryptohopper 使用 OAuth2 来提供对 API 的授权访问。

使用 OAuth2
了解 OAuth2 的工作原理有助于创建和调试使用 Cryptohopper API 的应用程序。要使用 OAuth,应用程序必须:
- 获取授权令牌以代表用户帐户执行操作。
- 将授权令牌转换为访问令牌。
- 授权所有发送到 Cryptohopper API 的 HTTP 请求。
用户认证方法允许应用程序以用户的身份代表用户行事。
例如,如果开发人员想要构建一个功能,允许交易机器人通过其平台使用买入终结点购买特定币种,那么该开发人员必须使用用户身份验证来获得用户的授权,以便以用户的名义进行交易。
换句话说,已签名的请求除了标识应用程序的身份之外,还标识了应用程序代表最终用户进行 API 调用所获得的权限(由用户的访问令牌表示)。
用户身份验证需要你的 Cryptohopper 应用程序的 App key 和 secret,以及你要代表其行动的用户账号的访问令牌和访问密钥。有关 OAuth 方法的更多信息,请见下文:
OAuth2 方法
authorize
通过 authorize 终结点,用户可以登录 Cryptohopper 并授予应用程序访问权限。授权访问成功或发生任何错误后,用户将被重定向到重定向 URL。如果请求中未指定重定向 URL,则使用应用程序配置的重定向 URL。在重定向 URL 的 GET 参数中,你将收到可用于交换 access_token 的授权令牌。
终结点:https://www.cryptohopper.com/oauth2/authorize
接受:GET
返回:code, state 在重定向 URL 的 GET 中
参数:
- client_id:你的应用程序的 App key。
- response_type:响应类型应包含文本:code。
- redirect_uri:用户在 OAuth 过程结束后将被重定向到的重定向 URL。
- state:用于在应用程序端识别请求的额外参数。它将返回到重定向 URL。
- scope: 逗号分隔的权限列表,例如:read,notifications,manage,trade。
token
token 终结点用于将授权令牌/代码更改为有效的 access_token。
终结点:https://www.cryptohopper.com/oauth2/token
接受:POST 以application/json 格式
返回:access_token 和 refresh_token 以application/json 格式
参数:
- client_id:你的应用程序的 App key。
- client_secret:你的应用程序的 App secret。
- grant_type:授权类型应包含文本:authorization_code。
- redirect_uri:你的应用程序的重定向 URL。
- code:授权令牌/代码。
成功响应代码
如果访问令牌终结点的请求成功,用户将被重定向到重定向 URL,其中包含作为 GET 参数传递的授权令牌。
如果 token 终结点的请求成功,则响应代码为 200,并且响应正文中包含 access_token,可用于对 API 调用进行身份验证。
错误响应代码
返回到重定向 URL 的错误通过返回的 GET 参数可识别:error=1。以下是可能的错误消息:
- App key 无效。
- 签名无效。
- App key 不能为空。
- 用户未授予应用程序权限。