运行命令时机器人崩溃
所以基本上,当我在我的机器人中运行我的更新命令时,它只是崩溃了。
你们能帮帮我吗
我正在使用 node 和 discord.js
代码如下:
// Check if the user is in any of the allowed groups and has the correct rank
const addedRoles = [];
const removedRoles = [];
const groupid = groups.groupId
const rankbinds = groups.rankbinds;
for (groupId in groups) {
const groupData = rankbinds;
for (const rankKey in groupData) {
const rank = groupData[rankKey];
try {
const inGroup = await noblox.getGroup(groupid);
const inRank = (await noblox.getRankInGroup(groupid, await noblox.getIdFromUsername(robloxUsername))).toString() === rankKey;
if (inGroup && inRank) {
const rolesArray = rank.roles;
console.log(rolesArray)
const template = rank.template
for (const roleId of rolesArray) {
const role = guild.roles.cache.find(r => r.id === roleId);
if (role && !guildMember.roles.cache.has(role.id)) {
await guildMember.roles.add(role);
addedRoles.push(role);
}
}
const nickname = template + " " + robloxUsername;
await guildMember.setNickname(nickname);
} else {
const rolesArray = rank.roles;
const template = rank.template
for (const roleId of rolesArray) {
const role = guild.roles.cache.find(r => r.id === roleId);
if (role && guildMember.roles.cache.has(role.id)) {
await guildMember.roles.remove(role);
removedRoles.push(role);
}
}
}
} catch (err) {
console.error(err);
}
}
}
注意: 我正在从 1092748438090829837.json 加载数据:
{
"groupId": 12939595,
"rankbinds": [
{
"rank": 255,
"template": "OTA",
"priority": 1,
"roles": [
"1093178031994044497"
]
},
{
"rank": 254,
"template": "OTA",
"priority": 1,
"roles": [
"1099667695106011147"
]
}
]
}
错误:
DiscordAPIError[10062]: Unknown interaction
at handleErrors (C:\Users\Avtandil Rusishvili\Desktop\rbx\node_modules\discord.js\node_modules\@discordjs\rest\dist\index.js:640:13)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async BurstHandler.runRequest (C:\Users\Avtandil Rusishvili\Desktop\rbx\node_modules\discord.js\node_modules\@discordjs\rest\dist\index.js:736:23)
at async REST.request (C:\Users\Avtandil Rusishvili\Desktop\rbx\node_modules\discord.js\node_modules\@discordjs\rest\dist\index.js:1387:22)
at async ChatInputCommandInteraction.reply (C:\Users\Avtandil Rusishvili\Desktop\rbx\node_modules\discord.js\src\structures\interfaces\InteractionResponses.js:111:5) {
requestBody: {
files: [],
json: {
type: 4,
data: {
content: undefined,
tts: false,
nonce: undefined,
embeds: [
{
color: 0,
author: [Object],
title: 'Roles Update',
description: 'Successfully updated user roles',
fields: [Array]
}
],
components: undefined,
username: undefined,
avatar_url: undefined,
allowed_mentions: undefined,
flags: undefined,
message_reference: undefined,
attachments: undefined,
sticker_ids: undefined,
thread_name: undefined
}
}
},
rawError: { message: 'Unknown interaction', code: 10062 },
code: 10062,
status: 404,
method: 'POST',
url: ''
}
有线大 API 错误不知道如何解决我
(它不是完整的代码它的主要部分)
如果您需要更多信息,请告诉我!
回答如下:要么你没有延迟你的交互,要么执行时删除了消息或交互,你能提供更多代码吗?即触发这个的命令或事件
推迟你需要这个
await interaction.deferReply({ ephemeral: true });
在你的交互中创建事件:)