我在nodeJS中有Discord.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: 'discord@example.com', password: '123abc' })
输出:
Electron :: ipcMain |触发了新的登录尝试!
这意味着它从未执行过Client.login函数。
为什么不这样做以及如何解决?