Discord Bot触发on_connect异常:403权限不足问题求助
解决Discord Bot同步命令时的403权限不足问题
错误核心是discord.errors.Forbidden: 403 Forbidden (错误代码: 50001): Missing Access,发生在Bot尝试同步应用命令时权限不足,按以下步骤排查解决:
1. 重新邀请Bot到服务器,确保包含命令权限
- 生成邀请链接时,必须同时勾选
bot和applications.commands两个scope - 权限选项中至少勾选
管理服务器(或更精细的管理应用程序命令权限),避免命令同步时被拒绝
2. 检查服务器内Bot角色的权限设置
- 进入服务器设置→角色,找到Bot对应的角色
- 确保该角色拥有
使用应用程序命令和管理应用程序命令权限,测试阶段可直接赋予管理员权限验证问题 - 调整Bot角色的位置,确保它在所有可能限制权限的角色之上,避免继承的拒绝权限生效
3. 限定命令同步的范围
- 若全局命令同步失败,可暂时指定同步到特定服务器,修改同步逻辑:
# 替换为你的目标服务器ID await bot.sync_commands(guild_ids=[1234567890]) - 缩小同步范围能快速定位是否是全局权限的问题
4. 重置Bot Token
- 登录Discord开发者平台,进入Bot页面,点击
重置Token - 复制新Token替换代码中的旧Token,重启Bot后再次尝试同步
内容的提问来源于stack exchange,提问作者Oss Jr.
相关产品推荐
相关产品推荐

