@Nikich31989

Как исправить ошибку «TypeError: Cannot read properties of undefined (reading 'ws')»?

Я сделал код, но почему-то мне выдаёт ошибку "TypeError: Cannot read properties of undefined (reading 'ws')".

const Discord = require('discord.js');
Discord.Constants.DefaultOptions.ws.properties.$browser = "Discord Android"
const Client = new Discord.client();

Client.on('ready', () => {
  console.log('the bot is online')
})

Client.login('ticket')
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
Alexandre888
@Alexandre888 Куратор тега discord.js
Javascript-разработчик
с течением времени структура файлов библиотекиdiscord.js менялась, и на данный момент (сейчас последняя версия — discord.js@14.13.0) в файле, к которому вы обращаетесь (Constants.js) не содержится объект DefaultOptions.

поэтому вы получаете ошибку, т.к Discord.Constants.DefaultOptionsundefined.
при попытке получить что-то у undefined (в вашем случае свойство ws, undefined.ws), возникает ошибка Cannot read properties of undefined.

сейчас статус «онлайн с телефона» боту можно установить следующим образом:
const { 
    DefaultWebSocketManagerOptions: { 
        identifyProperties 
    } 
} = require("@discordjs/ws");

identifyProperties.browser = "Discord Android"; // или Discord iOS
обратите внимание: хоть этот способ и рабочий, официально он не задокументирован.
в Discord API Docs говорится, что значением свойства browser (которое изменяет код выше) должно быть название библиотеки:

64fc595121210396656954.png
изменяя значение свойства на Discord iOS или Discord Android, мы можем получить статус «онлайн с телефона», несмотря на то, что этот подход не приветствуется ни Discord API, ни discord.js.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы