問題描述
我正在使用 discord.js v13.我已經成功創建了一個具有范圍 bot 和 application.commands 的機器人,并成功地將其添加到我服務器上的頻道中.現在我按照 tutorial 來注冊斜線命令.我創建了一個包含以下內容的文件 deploy-commands.js:
I am using discord.js v13. I have successfully created a bot with scopes bot and application.commands and successfully add it to a channel on my server. Now I am following the tutorial for registering slash commands. I created a file deploy-commands.js with the following content:
const { SlashCommandBuilder } = require('@discordjs/builders');
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9');
const { clientId, guildId, token } = require('./config.json');
const commands = [
new SlashCommandBuilder().setName('ping').setDescription('Replies with pong!'),
new SlashCommandBuilder().setName('server').setDescription('Replies with server info!'),
new SlashCommandBuilder().setName('user').setDescription('Replies with user info!'),
]
.map(command => command.toJSON());
const rest = new REST({ version: '9' }).setToken(token);
rest.put(Routes.applicationGuildCommands(clientId, guildId), { body: commands })
.then(() => console.log('Successfully registered application commands.'))
.catch(console.error);
然后我運行命令 node deploy-commands.js 并得到錯誤:
Then I run command node deploy-commands.js and I get error:
DiscordAPIError[50001]: Missing Access
at SequentialHandler.runRequest (/home/evalenzuela/apps/discord-aurasix/node_modules/@discordjs/rest/dist/lib/handlers/SequentialHandler.js:198:23)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async SequentialHandler.queueRequest (/home/evalenzuela/apps/discord-aurasix/node_modules/@discordjs/rest/dist/lib/handlers/SequentialHandler.js:99:20) {
rawError: { message: 'Missing Access', code: 50001 },
code: 50001,
status: 403,
method: 'put',
url: 'https://discord.com/api/v9/applications/901217590259617813/guilds/901235476399280138/commands'
}
我在互聯網上查看了很多信息,但找不到解決方案.我已經三次檢查了 clientId、guildId 和應用程序令牌.
I have reviewed a lot of info on the internet but could not find the solution. I have triple checked the clientId, guildId and application token.
推薦答案
添加到 Pedro 的評論中,來自 嘗試注冊命令:DiscordAPIError[50001]: Missing Access:您是否確保在不和諧開發者門戶中為您的機器人的 OAuth2 設置的范圍部分檢查了applications.commands"范圍?"
Adding on to Pedro's comment, From Trying to register commands: DiscordAPIError[50001]: Missing Access: "Have you made sure that the 'applications.commands' scope is checked in the scopes section of the OAuth2 settings for your bot in the discord developer portal?"
您提到您重新制作了應用程序和機器人,但沒有驗證您正確設置了 application.commands 范圍權限.這可能是您的問題.
You mention you remade the application and bot but did not verify you correctly set the application.commands scope permission. This is likely your issue.
這篇關于Discord JS:部署命令的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!