Tiada Acara Ahli Persekutuan Discord.js Saya Dipancarkan, Cache Pengguna Saya Pada dasarnya Kosong dan Fungsi Saya Habis Masa
Banyak pengguna Discord.js baru-baru ini ditemui isu di mana acara dan fungsi tertentu yang berkaitan dengan persatuan dan pengguna telah berhenti berfungsi atau ditangguhkan. Ini kerana Discord telah melaksanakan ciri baharu yang dipanggil Niat Keistimewaan, yang mengehadkan ciri tertentu untuk bot melainkan ia didayakan secara eksplisit.
Apakah Niat Keistimewaan?
Niat Keistimewaan ialah data atau ciri sensitif yang Discord memerlukan bot untuk mengisytiharkan mereka akan gunakan. Dua niat istimewa ialah:
-
GUILD_PRESENCES: Akses kepada data kehadiran ahli persatuan
-
GUILD_MEMBERS: Akses kepada ahli persatuan dan mereka data
Cara Mendayakan Niat Keistimewaan
Untuk mendayakan niat istimewa, anda mesti menyemaknya secara manual dalam Portal Pembangun Discord:
- Pergi ke Portal Pembangun Discord dan log masuk.
- Klik pada "Aplikasi" dan pilih bot anda.
- Pergi ke tab "Bot" pada bar sisi.
- Tatal ke bawah ke bahagian "Niat Gerbang Keistimewaan".
- Tandakan kotak untuk niat istimewa yang anda mahu gunakan.
Sekali anda telah mendayakan niat istimewa, anda juga perlu mendayakannya dalam bot Discord.js anda kod:
const client = new Discord.Client({ ws: { intents: new Discord.Intents(Discord.Intents.ALL) } });
Bagaimana Niat Keistimewaan Mempengaruhi Bot Anda
Jika anda tidak mendayakan niat istimewa, anda mungkin mengalami isu berikut:
- Acara Ahli Persatuan ( cth., guildMemberAdd) tidak akan dikeluarkan.
- Ahli dan cache pengguna akan kosong atau mengandungi sangat sedikit ahli.
- Fungsi seperti GuildMemberManager.fetch() dan UserManager.fetch() akan tamat masa.
- Data kehadiran tidak akan tersedia.
Petua Penyelesaian Masalah
Jika anda masih mengalami masalah selepas mendayakan niat istimewa, cuba yang berikut:
- Pastikan bot anda telah diluluskan oleh Discord.
- Pastikan kod anda menggunakan versi terkini Discord.js (v12 ).
- Semak semula ketepatan konfigurasi niat anda.
- Mulakan semula bot anda untuk memuat semula sambungannya ke Discord.
Sumber
- [Panduan Rasmi Discord.js - Gateway Intents](https://discord.js.org/#/docs /main/v12/class/Intents)
- [Dokumentasi Pembangun Discord - Gateway Niat](https://discord.com/developers/docs/topics/gateway#gateway-intents)
- [Kemas Kini Gerbang Soalan Lazim](https://support.discord.com/hc/en-us/articles/4405026734147-Discord-Gateway-Intent-Framework-Announcement-FAQ)
Atas ialah kandungan terperinci Mengapa Acara Ahli Persekutuan Discord.js Saya Tidak Dicetuskan, dan Bagaimana Saya Membetulkan Cache dan Tamat Masa Pengguna Saya yang Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn