You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js配置Slash Commands出现DiscordAPIError[50035]报错排查

故障根因

报错DiscordAPIError[50035]: Invalid Form Body 0.name[BASE_TYPE_REQUIRED]的直接原因是向Discord命令注册接口提交的请求体里没有有效命令结构,从报错日志里的requestBody: { files: undefined, json: [ [Function: toJSON] ] }可以明确看到,你传的命令数组里装的是函数引用,不是序列化后的命令数据对象,接口读取第一个命令的name字段时找不到对应值,直接触发参数校验失败。

问题代码位置

在你的命令处理逻辑中,往命令数组存数据的行写错了:

// 错误写法:仅存储了toJSON方法的引用,没有执行方法拿结果
client.commandArray.push(command.data.toJSON)
修复方案

将该行修改为调用toJSON()方法,拿到实际序列化后的命令对象再存入数组:

// 正确写法:执行toJSON方法获取序列化命令数据
client.commandArray.push(command.data.toJSON())
后续校验建议
  • 修改后重启服务,观察命令注册日志是否正常打印Successfully reloaded application (/) commands.
  • 逐个检查commands目录下的命令文件,确认每个文件都正确导出了包含name、description必填字段的data属性,避免因个别命令结构缺失触发同类报错

内容的提问来源于stack exchange,提问作者Personify

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 21:01:15