【问题标题】:Problem Setting up Slash Commands on Discord.js在 Discord.js 上设置斜杠命令时出现问题
【发布时间】:2022-11-19 08:24:46
【问题描述】:

我正在研究 Slash Commands,一切顺利,直到我打开机器人并打开机器人,但我收到此错误:DiscordAPIError [50035]:无效的表单主体 0.name[BASE_TYPE_REQUIRED]:这个字段是必须的 在 SequentialHandler.runRequest(C:\Users\frank\OneDrive\Desktop\kiki\node_modules@discordjs\rest\dist\index.js:753:15) 在 processTicksAndRejections (node:internal/process/task_queues:96:5) 在异步 SequentialHandler.queueRequest(C:\Users\frank\OneDrive\Desktop\kiki\node_modules@discordjs\rest\dist\index.js:565:14) 在异步 REST.request(C:\Users\frank\OneDrive\Desktop\kiki\node_modules@discordjs\rest\dist\index.js:999:22) 在异步 C:\Users\frank\OneDrive\Desktop\kiki\src\functions\handleCommands.js:34:11 { 原始错误:{ 代码:50035, 错误:{'0':[对象]}, 消息:'无效的表单主体' }, 代码:50035, 状态:400, 方法:“放”, 网址:'https://discord.com/api/v9/applications/994028254191169636/guilds/994028059579662417/commands', requestBody: { files: undefined, json: [ [Function: toJSON] ] } }

这是我的命令处理程序代码:

const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9');
const fs = require("fs")



const clientId = '994028254191169636';
const guildId = '994028059579662417';



module.exports = (client) => {
    client.handleCommands = async(commandFolders, path) => {
        client.commandArray = []
        for(folder of commandFolders){
            const commandFiles = fs.readdirSync(`${path}/${folder}`).filter(file => file.endsWith('.js'));
            for (const file of commandFiles) {
                
                const command = require(`../commands/${folder}/${file}`);

                client.commands.set(command.data.name, command);
                client.commandArray.push(command.data.toJSON)
            }
        
        }
        
        const rest = new REST({ version: '9' }).setToken(process.env.token);

        (async () => {
            try {
                console.log('Started refreshing application (/) commands.');

                await rest.put(
                    Routes.applicationGuildCommands(clientId, guildId),
                    { body: client.commandArray },
                );

                console.log('Successfully reloaded application (/) commands.');
            } catch (error) {
            console.error(error);
            }
        })();

    };
};

Please help me resolve this soon thanks :)

【问题讨论】:

  • 你好,有人可以帮我吗 thx :)
  • 你能包括你的命令之一的例子吗

标签: javascript discord discord.js bots


【解决方案1】:

你解决了吗?如果是这样你是怎么解决的

【讨论】:

猜你喜欢
  • 2022-01-03
  • 2022-01-09
  • 2022-01-07
  • 2022-11-26
  • 2021-09-09
  • 1970-01-01
  • 2021-11-09
  • 2021-07-02
  • 2022-01-05
相关资源
最近更新 更多