Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

400
Visualizações
channels.fetch() arrojando DiscordAPIError: Acceso faltante

Estoy tratando de envolver mi encabezado alrededor de la API discord.js. Es mi primera API/proyecto. Estoy tratando de registrar el nombre de un canal. La documentación de discord ofrece este código de ejemplo.

 // Fetch a channel by its id client.channels.fetch('actualIdHere') .then(channel => console.log(channel.name)) .catch(console.error);

Esto arroja un error de acceso faltante. Tengo los permisos habilitados. Aquí está mi configuración.

 // Require the necessary discord.js classes const { Client, Intents } = require('discord.js'); const { token } = require('./config.json'); // declare intents const myIntents = new Intents(); myIntents.add( [ Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_INTEGRATIONS, Intents.FLAGS.GUILD_MESSAGES, ], ); // Create a new client instance const client = new Client({ intents: myIntents }); client.login(token);

Aquí están mis permisos

Aquí está el cierre de sesión (nota, ¿de dónde vienen estas promesas?)

 AsyncQueue { promises: [] } AsyncQueue { promises: [] } DiscordAPIError: Missing Access at RequestHandler.execute (C:\Users\name\discord-greed-game-bot\node_modules\discord.js\src\rest\RequestHandler.js:351:13) at processTicksAndRejections (node:internal/process/task_queues:96:5) at async RequestHandler.push (C:\Users\name\discord-greed-game-bot\node_modules\discord.js\src\rest\RequestHandler.js:52:14) at async ChannelManager.fetch (C:\Users\name\discord-greed-game-bot\node_modules\discord.js\src\managers\ChannelManager.js:115:18) { method: 'get', path: '/channels/actualIdHere', code: 50001, httpStatus: 403, requestData: { json: undefined, files: [] } }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Después de conversar un poco con OP, parece que el problema provino de que estas líneas de código se ejecutaron antes de que <Discord>.Client estuviera listo para ejecutar comandos. Esa es la razón por la cual cualquier código que deba ser ejecutado por el bot debe colocarse dentro de un evento, y después de que se haya emitido el ready . Como sugirió @Wheelwright, una solución alternativa podría ser setTimeout() en ese código para que el bot tenga tiempo de conectarse, pero no se recomienda debido a la latencia de la API que, a veces, requiere más tiempo para iniciar sesión.

 client.once('ready', bot => { console.log(`Ready! Logged in as ${bot.user.tag}.`); client.channels.fetch('idOfTheChannel') .then(channel => console.log(channel.name)) .catch(console.error); });
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda