我有问题。我正在尝试使用 coingecko api 获取比特币价格。如果我安慰它,它可以工作,但如果我试图将它发送到频道,它会崩溃并出现此错误:
DiscordAPIError: Cannot send an empty message
这是我的代码:
const Discord = require("discord.js");
const client = new Discord.Client();
const coingecko = require("coingecko-api");
const fetch = require("node-fetch");
const axios = require('axios');
let api = "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=USD";
module.exports ={
name: 'bitcoin',
description: 'Get Bitcoin Price',
execute(msg,args){
axios.get(api)
.then((res) => {
console.log('RES:', res.data.bitcoin);
msg.reply(res.data.bitcoin);
})
}
}
请帮帮我。我从两天前就有这个问题,我无法解决它。也许如果您能帮助我摆脱价格 ({ usd: 32664 }) 中的 {},那就太好了。 ?
答案 0 :(得分:1)
您不能发送对象,而 res.data.bitcoin
是一个对象 ({ usd: XXXXX }
)。首先发送 res.data.bitcoin.usd
或 stringify 的值:
module.exports ={
name: 'bitcoin',
description: 'Get Bitcoin Price',
execute(msg,args){
axios.get(api)
.then((res) => {
console.log('RES:', res.data.bitcoin);
msg.reply(res.data.bitcoin.usd);
// OR
msg.reply(JSON.stringify(res.data.bitcoin))
})
}
}