2017-02-18 51 views
0

我有Discord.JS模塊中的NodeJSDiscord.js用Node.js的連接到客戶端失敗,但沒有錯誤

$ npm install --save discord.js 

但是,當我不斷嘗試連接到與它的用戶,它失敗。

這是我的package.json

{ 
    "name": "discord-bot", 
    "version": "0.0.1", 
    "description": "A Discord Bot that comes with a lot of cool commands, music player and a betting game!", 
    "main": "app/app.js", 
    "scripts": { 
    "start": "electron ." 
    }, 
    "keywords": [ 
    "bot", 
    "discord", 
    "music", 
    "betting-bot" 
    ], 
    "author": "Richard Olsen Sandberg", 
    "license": "MIT", 
    "devDependencies": { 
    "electron": "^1.4.15" 
    }, 
    "dependencies": { 
    "discord.js": "^11.0.0" 
    } 
} 

這是我app/app.js

var ClassNode  = require (__dirname + '/web/js/classnodes.js'), /* This is something I have made to detect class names and make more beautiful outputs */ 
    Discord  = require ('discord.js')      , /* This is the offical Discord.JS library            */ 
    Client  = new Discord.Client ()      , /* This is a new instance of a Client from the Discord module       */ 
    Electron  = require ('electron')       , /* This is to create applications that uses html, css, js, etc inside a chrome window */ 
    BrowserWindow = Electron.BrowserWindow       , /* This is the class that creates the Chrome Window         */ 
    app   = Electron.app         , /* This is the core off Electron              */ 
    ipc   = Electron.ipcMain        ; /* Send messages through windows              */ 

/*****************************************/ 
/* I will not show content of Electron */ 
/* stuff except from the login part to */ 
/* make the question shorter    */ 
/*****************************************/ 



ipc.on ('login-attempt', (event, args) => { 
    console.warning (ClassNode.className + 'New sign in attempt triggered!'); 

    if (typeof args !== 'object' || args.username == undefined || args.password == undefined) { 
    console.error (ClassNode.className + 'Invalid sign in attempt!'); 
    event.sender.send ('login-attempt-error', ClassNode.className + 'Invalid request!'); 
    return; 
    } 

    Client.login (args.username, args.password, (error, token) => { 
    if (error) { 
     console.error (ClassNode.className + 'Login attempt failed : ' + error); 
     event.sender.send ('login-attempt-error', ClassNode.className + 'Login attempt failed : ' + error); 
    } else { 
     console.log (ClassNode.className + 'Successfully created a connection!'); 
     console.log (ClassNode.className + 'Token : ' + token); 
    } 
    }); 

}); 

代碼現在假設瀏覽器窗口中發送ipc.send('login-attempt', { username: '[email protected]', password: '123abc' })

輸出:

電子:: ipcMain |新的登錄嘗試觸發!

這意味着它從不執行Client.login函數。

爲什麼不這樣做,我該如何解決它?

回答

0

通過Discord API不再允許使用用戶名和密碼輸入。你將不得不使用OAuth的應用程序或用戶的令牌存儲在localStorage可以通過不和諧的客戶端開發工具使用按Ctrl + + 在Windows(使用相應的等值其他訪問平臺)。

here所示,只接受令牌。

API更改解釋here

相關問題