Javascript 在Discord.JS中发出狗的命令
我试图弄清楚如何发出一个命令,使Javascript 在Discord.JS中发出狗的命令,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我试图弄清楚如何发出一个命令,使GET请求并返回嵌入的图像。以下是我尝试过的代码: const Discord=require('Discord.js'); const fetch=require('node-fetch'); module.exports={ 名称:“afv!狗”, 描述:“从dog.ceo那里抓到一只可爱的小狗”, 执行(消息、参数、机器人){ const prevmsg=msg const fetchEmbed=new Discord.MessageEmbed() .set
GET
请求并返回嵌入的图像。以下是我尝试过的代码:
const Discord=require('Discord.js');
const fetch=require('node-fetch');
module.exports={
名称:“afv!狗”,
描述:“从dog.ceo那里抓到一只可爱的小狗”,
执行(消息、参数、机器人){
const prevmsg=msg
const fetchEmbed=new Discord.MessageEmbed()
.setColor(“#e3dcd3”)
.setTitle(':dog:Woof!让我给你找只狗!')
.setDescription(“这不会花很长时间…”)
msg.reply(fetchEmbed).然后(msg=>{
const{message}=wait fetch('https://dog.ceo/api/breeds/image/random,然后(response=>response.text());
console.log(消息)
const doneEmbed=new Discord.MessageEmbed()
.setColor(“#e3dcd3”)
.setTitle(':dog:Woof!找到一个!')
.setImage(消息)
msg.delete();
prevmg.channel.send(doneEmbed);
})
},
};
当我尝试运行index.js
时会发生这种情况:
const { message } = await fetch('https://dog.ceo/api/breeds/image/random').then(response => response.json());
^^^^^
SyntaxError: await is only valid in async function
您没有等待
prevmg.channel.send(doneEmbed)代码>,如果我没看错的话
编辑:我错了您需要使用response.json()
而不是response.text()
.text()
用于标准的html
纯文本,但是您使用的dog API返回一个对象。很抱歉没有包含此内容,但当我尝试此建议和下面的答案时,结果是这样的const{message}=wait-fetch('https://dog.ceo/api/breeds/image/random)。然后(response=>response.json());^^SyntaxError:await仅在async函数中有效
很抱歉没有这样说,我已经编辑了这个问题,并且也向其他回答者说过。很抱歉没有包括这个,但是当我尝试这个建议和下面的答案时,它得出了这个结论const{message}=wait-fetch('https://dog.ceo/api/breeds/image/random)。然后(response=>response.json());^^SyntaxError:await仅在异步函数中有效
很抱歉没有这样说,我已经编辑了这个问题,并且也对其他回答者说了这句话。请将execute(msg,args,bot){
更改为async execute(msg,args,bot){
使之成为异步
@IceBotYT您能提供更多关于为什么这样做的信息吗“不工作”?您收到相同的错误消息了吗?啊,我的错。更改msg.reply(fetchEmbed)。然后(msg=>{
到msg.reply(fetchEmbed)。然后(async(msg)=>{
当然。让我试试。