前言
在开发前端项目时,我们经常需要调用 API 来获取数据,其中包括加密货币交易所的 API。Poloniex 是一家加密货币交易所,提供了完善的 API 接口,方便我们获取 K 线数据、深度数据、成交数据等信息。
本文将介绍如何使用 npm 包 poloniex-exchange-api 来调用 Poloniex API。
准备工作
在使用 poloniex-exchange-api 前,我们需要先安装 Node.js。可以通过以下链接下载:Node.js 官网。安装好后,我们可以打开命令行工具验证是否安装成功,输入以下命令打印出 Node.js 版本号:
node -v
安装 poloniex-exchange-api
在命令行工具中,使用以下命令来安装 poloniex-exchange-api:
npm install poloniex-exchange-api --save
安装成功后,我们可以在项目根目录下的 node_modules 文件夹中找到 poloniex-exchange-api。
使用 poloniex-exchange-api
接下来,我们将介绍如何使用 poloniex-exchange-api 调用 Poloniex API。
回调函数
如果对 JavaScript 中的回调函数(Callback)不熟悉,可以参考以下代码:
-- -------------------- ---- ------- -------- ------------- --------- - -- ------ ------------- -- - --------------- -- ------ - -------------- ------- ------ -- - ------------------ ---
以上代码定义了一个 getData
函数,该函数接收一个字符串 data
和一个回调函数 callback
作为参数。回调函数 callback
在异步操作完成后被调用,将 data
作为参数传递给回调函数并打印输出。
在使用 poloniex-exchange-api 时,大多数方法都接收一个回调函数作为最后一个参数。
获取市场交易对
Poloniex API 提供了多个 RESTful 接口,我们需要通过该接口获取市场交易对。
var polo = require('poloniex-exchange-api'); // 调用公共 API,获取市场交易对 polo.returnTicker((err, data) => { if (err) console.log(err); console.log(data); });
上述代码通过调用 returnTicker
方法获取市场交易对信息。该方法需要一个回调函数作为参数,在数据获取完成后被调用并传递数据。
输出结果示例如下:
-- -------------------- ---- ------- - ---------- - ----- ---- ------- ------------- ------------ ------------- ------------- ------------- ---------------- ------------- ------------- ------------- -------------- ------------------ ----------- ---- ----------- ------------- ---------- ------------ -- -- ------ -
获取 K 线数据
我们可以通过 returnChartData
方法获取 K 线数据。
// 调用公共 API,获取 K 线数据 polo.returnChartData('BTC_ETH', 300, (err, data) => { if (err) console.log(err); console.log(data); });
上述代码通过调用 returnChartData
方法获取 BTC_ETH 交易对的 5 分钟 K 线数据,数据分块大小为 300 秒。
输出结果示例如下:
-- -------------------- ---- ------- - - ------- ----------- ------- ----------- ------ ----------- ------- ----------- -------- ----------- --------- ------------ -------------- ------------- ------------------ ---------- -- -- ------ -
获取深度数据
我们可以通过 returnOrderBook
方法获取深度数据。
// 调用公共 API,获取深度数据 polo.returnOrderBook('BTC_ETH', 10, (err, data) => { if (err) console.log(err); console.log(data); });
上述代码通过调用 returnOrderBook
方法获取 BTC_ETH 交易对的最大 10 层深度数据。
输出结果示例如下:
-- -------------------- ---- ------- - ------- - - ------------- ------------ -- -- ------ -- ------- - - ------------- ------------ -- -- ------ - -
获取成交数据
我们可以通过 returnTradeHistory
方法获取成交数据。
// 调用公共 API,获取成交数据 polo.returnTradeHistory('BTC_ETH', (err, data) => { if (err) console.log(err); console.log(data); });
上述代码通过调用 returnTradeHistory
方法获取 BTC_ETH 交易对的所有成交数据。
输出结果示例如下:
-- -------------------- ---- ------- - - ---------------- --------- ---------- -------- ------- ----------- ---------- ------- ------ ------- ------------- --------- ------------- -------- ------------ -- -- ------ -
总结
使用 poloniex-exchange-api,我们可以方便地调用 Poloniex 的 RESTful API。本文介绍了如何使用 npm 包 poloniex-exchange-api 获取市场交易对、K 线数据、深度数据和成交数据等信息。这些数据对于实现加密货币交易所等项目非常重要。
示例代码
完整代码如下:
-- -------------------- ---- ------- --- ---- - --------------------------------- -- ---- ----------- ----------------------- ----- -- - -- ----- ----------------- ------------------ --- -- ---- ------ - --- ------------------------------- ---- ----- ----- -- - -- ----- ----------------- ------------------ --- -- ---- ---------- ------------------------------- --- ----- ----- -- - -- ----- ----------------- ------------------ --- -- ---- ---------- ---------------------------------- ----- ----- -- - -- ----- ----------------- ------------------ ---
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005737f81e8991b448e9728