how to fix errors like this "DiscordAPIError: Missing Access"
how to fix errors like this "DiscordAPIError: Missing Access"
按照youtube上的教程,发现了这样的错误,不知道问题出在哪里。当i运行node my_bot.js
,则出现错误DiscordAPIError: Missing Access
.
我已经尝试了一些东西。我的期望是在 discord 上出现 Hello World 字样。结果报错。
我想,我的代码没有问题
const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
client.on('ready', () => {
console.log("Connected as " + client.user.tag)
client.user.setActivity('you', { type: 'WATCHING' });
client.guilds.cache.forEach((guild) => {
console.log(guild.name);
guild.channels.cache.forEach((channel) => {
console.log(` - ${channel.name} ${channel.type} ${channel.id}`)
})
// General channel id: 956453625889185826
})
let generalChannel = client.channels.cache.get("956453625889185826")
generalChannel.send("Hello World")
})
client.login("XXXXXXXXXXXXXXXXXXXXX")
结果:
Connected as Davd#3016
gavbot
- Text Channels GUILD_CATEGORY 956453625889185824
- Voice Channels GUILD_CATEGORY 956453625889185825
- general GUILD_TEXT 956453625889185826
- General GUILD_VOICE 956453625889185827
C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:350
throw new DiscordAPIError(data, res.status, request);
^
DiscordAPIError: Missing Access
at RequestHandler.execute (C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:350:13)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async RequestHandler.push (C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:51:14)
at async TextChannel.send (C:\Users\User\node_modules\discord.js\src\structures\interfaces\TextBasedChannel.js:175:15) {
method: 'post',
path: '/channels/956453625889185826/messages',
code: 50001,
httpStatus: 403,
requestData: {
json: {
content: 'Hello World',
tts: false,
nonce: undefined,
embeds: undefined,
components: undefined,
username: undefined,
avatar_url: undefined,
allowed_mentions: undefined,
flags: undefined,
message_reference: undefined,
attachments: undefined,
sticker_ids: undefined
},
files: []
}
}
如错误所述,Missing access
表示您的机器人没有权限在频道中发送消息。
确保您的机器人在您要发送消息的频道中具有 Send message
权限
按照youtube上的教程,发现了这样的错误,不知道问题出在哪里。当i运行node my_bot.js
,则出现错误DiscordAPIError: Missing Access
.
我已经尝试了一些东西。我的期望是在 discord 上出现 Hello World 字样。结果报错。
我想,我的代码没有问题
const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
client.on('ready', () => {
console.log("Connected as " + client.user.tag)
client.user.setActivity('you', { type: 'WATCHING' });
client.guilds.cache.forEach((guild) => {
console.log(guild.name);
guild.channels.cache.forEach((channel) => {
console.log(` - ${channel.name} ${channel.type} ${channel.id}`)
})
// General channel id: 956453625889185826
})
let generalChannel = client.channels.cache.get("956453625889185826")
generalChannel.send("Hello World")
})
client.login("XXXXXXXXXXXXXXXXXXXXX")
结果:
Connected as Davd#3016
gavbot
- Text Channels GUILD_CATEGORY 956453625889185824
- Voice Channels GUILD_CATEGORY 956453625889185825
- general GUILD_TEXT 956453625889185826
- General GUILD_VOICE 956453625889185827
C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:350
throw new DiscordAPIError(data, res.status, request);
^
DiscordAPIError: Missing Access
at RequestHandler.execute (C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:350:13)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async RequestHandler.push (C:\Users\User\node_modules\discord.js\src\rest\RequestHandler.js:51:14)
at async TextChannel.send (C:\Users\User\node_modules\discord.js\src\structures\interfaces\TextBasedChannel.js:175:15) {
method: 'post',
path: '/channels/956453625889185826/messages',
code: 50001,
httpStatus: 403,
requestData: {
json: {
content: 'Hello World',
tts: false,
nonce: undefined,
embeds: undefined,
components: undefined,
username: undefined,
avatar_url: undefined,
allowed_mentions: undefined,
flags: undefined,
message_reference: undefined,
attachments: undefined,
sticker_ids: undefined
},
files: []
}
}
如错误所述,Missing access
表示您的机器人没有权限在频道中发送消息。
确保您的机器人在您要发送消息的频道中具有 Send message
权限