【问题标题】:How to use coinbase API for node.js如何为 node.js 使用 coinbase API
【发布时间】:2020-08-03 15:51:18
【问题描述】:

有没有人使用过用于 node.js 的 coinbase API 的经验

我正在关注npm coinbase 文档,但它不起作用。我只是想知道比特币的价格。我确实先在两者之间安装了coinbase,所以这不是问题。

const config = require('../configuration')
const coinbase = require('coinbase')

const apiKey = config.get('COINBASE_API_KEY')
const apiSecret = config.get('COINBASE_API_SECRET')

const client = new coinbase.Client({apiKey, apiSecret})

module.exports = {
  start: async () => {
    client.getBuyPrice({'currencyPair': 'BTC-USD'}, function(err, obj) {
      console.log('total amount: ' + obj.data.amount);
    });
  }
}

当我运行它时,它给了我以下错误:

C:\Users\msaad\VisualStudioProjects\CryptoTrader-master\session-1>节点 index.js C:\Users\msaad\VisualStudioProjects\CryptoTrader-master\session-1\src\app\index.js:12 console.log('总量:' + obj.data.amount);

TypeError: 无法读取 null 的属性“数据”

当我运行它时它总是返回 NULL。

【问题讨论】:

  • 你能控制台日志 obj 吗?
  • 当我尝试只记录 obj 时,它会运行但它也会返回:total amount: null
  • 这就是obj.data.amount 给你一个错误的原因。你确定你传递给getBuyPrice函数的参数是正确的吗?
  • 尝试运行 getBuyPrice 函数而不将其导出并包装到异步中,看看它做了什么。
  • 它仍然返回 null。可能是因为我的 API 密钥仍然被禁用吗?它在我的硬币基础帐户上说,API 密钥在创建后 48 小时后启用。

标签: javascript node.js coinbase-api


【解决方案1】:

您可以为您的客户端禁用 SSL。

const { apiKey, apiSecret } = require('./config.js');
const Client = require('coinbase').Client;

const myClient = new Client({ 'apiKey':apiKey, 'apiSecret':apiSecret, 
strictSSL:false });

myClient.getBuyPrice({'currencyPair': 'BTC-USD'}, function(err, obj){
    if(err) console.log("Error: ", err);
    console.log("Total Amount: ", obj.data.amount);
});

或者,您可以按照this 问题的答案中的说明获取和使用 SSL 证书。

【讨论】:

    【解决方案2】:

    在安装“coinbase”npm 包并运行npm audit 后,我是唯一一个收到有关严重漏洞警告的人吗?谷歌搜索时我找不到任何关于它的信息,所有关于使用 node.js 从 Coinbase 获取数据的指南似乎都专注于使用该包......

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-05
    • 2018-06-27
    • 1970-01-01
    • 2021-04-27
    • 1970-01-01
    • 2018-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多