Discord.js机器人无法生成邀请链接,报错INVITE_MISSING_SCOPES
问题原因
- 你使用的discord.js版本为v13及以上,该版本对
generateInvite方法的参数做了强制要求,必须传入scopes字段,用来标识邀请链接的生效范围,你当前的调用没有传入该参数,所以触发了INVITE_MISSING_SCOPES报错。 - 你代码中填写的权限名称存在拼写错误,
ANDMINISTRATOR是错误写法,正确的管理员权限名称为ADMINISTRATOR。
解决方法
修改ready事件中generateInvite的调用参数,补充scopes字段并修正权限拼写即可,修改后的代码片段如下:
bot.on('ready', () => { console.log(`Bot connected. Logged as ${bot.user.username}`); bot.generateInvite({ scopes: ['bot'], // 新增必填的scope参数,标识是机器人邀请链接 permissions: ['ADMINISTRATOR'], // 修正权限拼写错误 }) .then(link => console.log(`Generated bot invite link: ${link}`)) .catch(console.error); });
如果后续需要使用斜杠命令功能,可以在scopes数组中额外添加applications.commands参数。
内容的提问来源于stack exchange,提问作者user16445893
相关产品推荐
相关产品推荐

