我在discord.js中使用API​​时遇到问题

时间:2020-07-02 11:58:28

标签: javascript node.js discord.js

因此,在使用针对node.js的coinbase API定义价格时遇到了问题,我可以发送嵌入,但是我有点用我缺少的东西来显示价格。预先感谢!

exports.run = async (client, msg, args) => {
const Discord = require('discord.js');

var Client = require('coinbase').Client;
  var client = new Client({'apiKey': 'API KEY',
                         'apiSecret': 'API SECRET'});

client.getBuyPrice({'currencyPair': 'BTC-USD'}, function(err, price) {
  const av = new Discord.RichEmbed()
  let embed = new Discord.RichEmbed()
    .setTitle("BTC Price Checker")
    .setDescription(price)
    .setFooter("Created with ❤️ by anonymous");
  msg.channel.send(embed)
  msg.delete();
});
}

1 个答案:

答案 0 :(得分:0)

我不认为这是一个discord.js问题,运往stackoverflow(https://stackoverflow.com/questions/tagged/coinbase-api?tab=Newest)的coinbase-api部分可能会有更多运气

不过,您可以尝试一些解决问题的方法,

1:检查您是否已将api_key和api_secret设置为密钥和机密

var Client = require('coinbase').Client;
  var client = new Client({'apiKey': 'API KEY', // here
                         'apiSecret': 'API SECRET'}); // and here

2:检查错误

client.getBuyPrice({'currencyPair': 'BTC-USD'}, function(err, price) {
    if (err) console.log(err)
});

3:在发送变量“ price”之前先检查它是什么(console.log)

client.getBuyPrice({'currencyPair': 'BTC-USD'}, function(err, price) {
    console.log(price)
});

另一方面,我注意到了其他一些事情。

1:您已经在exports.run的参数中设置了客户端,稍后还要对其进行定义。这是一种不好的做法,以后可能会导致一些错误。

var Client = require("coinbase").Client;

exports.run = async (bot) => {
   var client = new Client({'apiKey': 'API KEY','apiSecret': 'API SECRET'});
}

2:您定义了av,但从未在任何地方使用它? (第9行)

3:您在发送邮件后立即将其删除,可能是您的问题吗? (第15行)


总体而言,问题不在于discord.js,而在于对coingbase的请求/您的编码方式,请尝试查看coinbase-api here的文档