問(wèn)題描述
我正在使用 discord.js v13.我已經(jīng)成功創(chuàng)建了一個(gè)具有范圍 bot 和 application.commands 的機(jī)器人,并成功地將其添加到我服務(wù)器上的頻道中.現(xiàn)在我按照 tutorial 來(lái)注冊(cè)斜線命令.我創(chuàng)建了一個(gè)包含以下內(nèi)容的文件 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);
然后我運(yùn)行命令 node deploy-commands.js 并得到錯(cuò)誤:
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'
}
我在互聯(lián)網(wǎng)上查看了很多信息,但找不到解決方案.我已經(jīng)三次檢查了 clientId、guildId 和應(yīng)用程序令牌.
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 的評(píng)論中,來(lái)自 嘗試注冊(cè)命令:DiscordAPIError[50001]: Missing Access:您是否確保在不和諧開(kāi)發(fā)者門(mén)戶中為您的機(jī)器人的 OAuth2 設(shè)置的范圍部分檢查了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?"
您提到您重新制作了應(yīng)用程序和機(jī)器人,但沒(méi)有驗(yàn)證您正確設(shè)置了 application.commands 范圍權(quán)限.這可能是您的問(wèn)題.
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.
這篇關(guān)于Discord JS:部署命令的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!