前言
Kraken 是一家数字货币交易所,提供了许多接口供开发者使用。其中,REST API 是最常用的接口类型,但使用 REST API 进行开发需要写复杂的网络请求和解析代码,因此,有许多第三方库可以帮我们简化操作。kraken-api-wrapper 就是这样一个库,它可以让我们以更少的代码量使用 Kraken 的 REST API,方便开发人员快速构建应用程序。
在本文中,我们将介绍如何安装和使用 kraken-api-wrapper,帮助开发人员更快地上手 Kraken 的 REST API。
安装
在安装之前,请确保本地已经安装了 Node.js。
- 打开终端或命令行工具。
- 进入项目根目录,并运行以下命令:
npm install kraken-api-wrapper
- 安装成功后,可以在项目的 package.json 文件中看到 kraken-api-wrapper 的依赖被添加。
使用
初始化
在使用 kraken-api-wrapper 之前,需要先初始化一个 KrakenApiWrapper 对象。初始化时,需要提供 Kraken API 的 API Key 和 Secret Key。
const KrakenApiWrapper = require('kraken-api-wrapper') const apiKey = 'YOUR_API_KEY' const secretKey = 'YOUR_SECRET_KEY' const kraken = new KrakenApiWrapper(apiKey, secretKey)
发送请求
在初始化之后,就可以使用 kraken 对象来发送各种类型的请求。kraken-api-wrapper 支持 Kraken 的大部分 REST API,例如获取市场深度、获取最新交易价格等。
以下是一个获取 BTC/USD 市场深度的示例:
kraken.getDepth({pair: 'XXBTZUSD', count: 10}).then(result => { console.log(result) }).catch(err => { console.error(err) })
在这个示例中,我们使用了 kraken 对象的 getDepth() 方法来获取市场深度。此方法需要一个参数对象,该对象包含要获取的币种对和要获取的记录数。在成功发送请求后,可在 then() 方法中获得响应数据;在请求失败时,可在 catch() 方法中获取错误信息。
验证请求
默认情况下,kraken-api-wrapper 使用以下步骤验证请求:
- 生成一个 nonce。
- 将 nonce、请求方法、请求 URL 和请求参数按字典序排序。
- 使用 Secret Key 对排序后的字符串进行 HMAC-SHA512 签名。
- 将生成的签名添加到请求头中,并发送请求。
如果需要自定义请求验证方式,可以使用 KrakenApiWrapper 对象的 setRequestVerifier() 方法。例如,以下代码使用自定义验证方式发送请求:
-- -------------------- ---- ------- ----- -------------- - ----------- ------- ---------- ------ -- - -- ------- - ----------------------------------------- ----------------------------- ------ ------- ------------------- -- - ------------------- ------------ -- - ------------------ --
在此示例中,我们使用 setRequestVerifier() 方法设置了一个名为 customVerifier 的自定义请求验证器函数。在下一行代码中,我们使用了一个名为 customApiCall 的方法,它可以使用我们自定义的请求验证器发出请求。
使用 Promise
kraken-api-wrapper 的请求方法返回 Promise 对象,因此可以使用 Promise 的相关方法进行处理和应答。以下是一个使用 Promise.all() 方法处理多个请求的示例:
Promise.all([ kraken.getTicker({pair: 'XXBTZUSD'}), kraken.getOHLC({pair: 'XXBTZUSD', interval: 60}) ]).then(results => { console.log(results) }).catch(err => { console.error(err) })
在此示例中,Promise.all() 方法并行发起了两个请求,使用返回结果作为 Promise.all() 的结果。
总结
本文介绍了 npm 包 kraken-api-wrapper 的安装和使用。我们展示了如何初始化 KrakenApiWrapper 对象、如何发送请求、如何验证请求并如何使用 Promise。由于该库提供了高度抽象的 API,因此可以使开发人员用很少的代码量操作 Kraken 的 REST API。如果您想更加深入地学习此 npm 包,请访问它的 GitHub 项目页面。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005732a81e8991b448e953e