Discord.Net GetUser By Id Restituisce null
Stavo codificando un bot per Discord usando Discord.net. Ho un punto in IGuildcui devo ottenere un utente tramite ID, quindi sto usando:
var user = await guild.GetUserAsync(id, CacheMode.AllowDownload);
Questo dovrebbe ottenere l'utente se memorizzato nella cache e, in caso contrario, scaricarlo. Ma l'utente è nullo ogni volta.
So che l'id è corretto. C'è un modo corretto per farlo?
Il server ha> 1k membri, quindi scaricarli DownloadUsersAsyncrichiede troppo tempo.
Risposte
Arrivando tardi alla festa.
Il tuo problema è una diretta conseguenza dei nuovi Gateway Intents, messi in atto da Discord sulla loro API.
Non preoccuparti, questa è una soluzione facile. Vai ahttps://discord.com/developers/applications, seleziona la tua app, quindi vai alla sezione bot. Stai quindi cercando questo . Abilita solo l' intento dei membri del server .
Se tutto è andato secondo i piani, questo dovrebbe risolvere il problema in modo trasparente senza nemmeno dover ricompilare. A parte questo, sentiti libero di chiedere di nuovo.