Discord 在以下情况下,如何在中断时停止命令:;超载;

Discord 在以下情况下,如何在中断时停止命令:;超载;,discord,discord.js,bots,Discord,Discord.js,Bots,我有一些命令遵循同样的代码,只是有些东西发生了变化,代码是for-dog命令,它在适度范围内工作良好(不是滥发命令,可能每5秒运行一次),但当它被滥发时,它经常会向终端吐出一个奇怪的错误,我想知道是否有任何方法来修复或改进它。谢谢 语言:Discord.jsv12 const Discord = require('discord.js'); const url = 'https://www.reddit.com/r/lookatmydog/hot/.json?limit=100' module

我有一些命令遵循同样的代码,只是有些东西发生了变化,代码是for-dog命令,它在适度范围内工作良好(不是滥发命令,可能每5秒运行一次),但当它被滥发时,它经常会向终端吐出一个奇怪的错误,我想知道是否有任何方法来修复或改进它。谢谢

语言:Discord.jsv12

const Discord = require('discord.js');
const url = 'https://www.reddit.com/r/lookatmydog/hot/.json?limit=100'

module.exports = {
    name: 'dog',
    description: 'sends a dog!',
    execute(message, args) {

        https.get(url, (result) => {
            var body = ''
            result.on('data', (chunk) => {
                body += chunk
            })

            result.on('end', () => {
                var response = JSON.parse(body)
                var index = response.data.children[Math.floor(Math.random() * 99) + 1].data

                if (index.post_hint !== 'image') {

                    var text = index.selftext
                    const textembed = new Discord.MessageEmbed()
                        .setTitle(subRedditName)
                        .setColor('RANDOM')
                        .setDescription(`[${title}](${link})\n\n${text}`)
                        .setURL(`https://reddit.com/${subRedditName}`)

                    message.channel.send(textembed)
                }

                var image = index.preview.images[0].source.url.replace('&', '&')
                var link = 'https://reddit.com' + index.permalink
                var subRedditName = index.subreddit_name_prefixed

                if (index.post_hint !== 'image') {
                    const textembed = new Discord.RichEmbed()
                        .setTitle(subRedditName)
                        .setColor('RANDOM')
                        .setDescription(`[${title}](${link})\n\n${text}`)
                        .setURL(`https://reddit.com/${subRedditName}`)

                    message.channel.send(textembed)
                }
                console.log(image);
                const imageembed = new Discord.MessageEmbed()
                    .setTitle('Here is a dog, how nice!')
                    .setImage(image)
                    .setColor('RANDOM')
                    
                message.channel.send(imageembed)
            }).on('error', function (e) {
                console.log('Got an error: ', e)
            })
        })
    },
}```

The error I got writing this was:

```C:\Users\-\Desktop\Corn Flakes\commands\Fun\dog.js:26
                        .setDescription(`[${title}](${link})\n\n${text}`)
                                            ^

ReferenceError: title is not defined
    at IncomingMessage.<anonymous> (C:\Users\manof\Desktop\Corn Flakes\commands\Fun\dog.js:26:45)
    at IncomingMessage.emit (events.js:327:22)
    at endReadableNT (internal/streams/readable.js:1327:12)
    at processTicksAndRejections (internal/process/task_queues.js:80:21)```
const Discord=require('Discord.js');
常量url=https://www.reddit.com/r/lookatmydog/hot/.json?limit=100'
module.exports={
名字:“狗”,
描述:'发送一只狗!',
执行(消息,参数){
https.get(url,(结果)=>{
变量体=“”
result.on('data',(chunk)=>{
body+=块
})
result.on('end',()=>{
var response=JSON.parse(正文)
var index=response.data.children[Math.floor(Math.random()*99)+1].data
如果(index.post_hint!=='image'){
var text=index.selftext
const textembed=new Discord.MessageEmbed()
.setTitle(子RedditName)
.setColor(“随机”)
.setDescription(`[${title}](${link})\n\n${text}`)
.setURL(`https://reddit.com/${subRedditName}`)
message.channel.send(textembed)
}
var image=index.preview.images[0]。source.url.replace(“&;”、“&”)
var-link=https://reddit.com'+index.permalink
var subRedditName=index.subreddit\u name\u前缀
如果(index.post_hint!=='image'){
const textembed=new Discord.RichEmbed()
.setTitle(子RedditName)
.setColor(“随机”)
.setDescription(`[${title}](${link})\n\n${text}`)
.setURL(`https://reddit.com/${subRedditName}`)
message.channel.send(textembed)
}
console.log(图像);
const imageembed=new Discord.MessageEmbed()
.setTitle(“这是一只狗,多好啊!”)
.setImage(图像)
.setColor(“随机”)
message.channel.send(imageembed)
}).on('error',函数(e){
log('出现错误:',e)
})
})
},
}```
我写这篇文章时遇到的错误是:
```C:\Users\-\Desktop\Corn Flakes\commands\Fun\dog.js:26
.setDescription(`[${title}](${link})\n\n${text}`)
^
ReferenceError:未定义标题
在收到消息时。(C:\Users\manof\Desktop\Corn Flakes\commands\Fun\dog.js:26:45)
在IncomingMessage.emit(events.js:327:22)
在endReadableNT(internal/streams/readable.js:1327:12)
在处理和拒绝时(内部/process/task_queues.js:80:21)```

title
是未定义的,它应该来自哪里?它过去来自子Reddit名称,但我不喜欢这样,所以我尝试更改它,是否可以通过执行var title=(无论我希望标题是什么)来修复它?是的,未定义的变量可以通过定义它来修复。你知道为什么吗?meme工作正常,没有错误(即使在我发垃圾邮件时)但是-cat和-dog即使使用完全相同的代码也会在发送垃圾邮件时给出随机数?我现在使用-dog得到的错误是:``var image=index.preview.images[0].source.url.replace('&;','&'))^
TypeError:无法读取IncomingMessage中未定义的属性“images”。(C:\Users\manof\Desktop\Corn Flakes\commands\Fun\dog.js:35:43
但我不确定如何定义此属性。您可以尝试为此特定命令实施冷却,更多信息如下: