connect ECCONREFUSED :: 1:50106"/>
connect ECCONREFUSED :: 1:50106
我正在用Node.js和erela.js制作一个不和谐的机器人,但是当我尝试打开处理erela的服务器时,它显示了此错误:
A node error occured: connect ECONNREFUSED ::1:50106
2020-05-01T21:23:19.367157+00:00 app[worker.1]: events.js:287
2020-05-01T21:23:19.367175+00:00 app[worker.1]: throw er; // Unhandled 'error' event
2020-05-01T21:23:19.367176+00:00 app[worker.1]: ^
2020-05-01T21:23:19.367176+00:00 app[worker.1]:
2020-05-01T21:23:19.367177+00:00 app[worker.1]: Error: connect ECONNREFUSED ::1:50106
2020-05-01T21:23:19.367178+00:00 app[worker.1]: at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16)
2020-05-01T21:23:19.367179+00:00 app[worker.1]: Emitted 'error' event on WebSocket instance at:
2020-05-01T21:23:19.367179+00:00 app[worker.1]: at ClientRequest.<anonymous> (/app/node_modules/ws/lib/websocket.js:554:15)
2020-05-01T21:23:19.367179+00:00 app[worker.1]: at ClientRequest.emit (events.js:310:20)
2020-05-01T21:23:19.367180+00:00 app[worker.1]: at Socket.socketErrorListener (_http_client.js:426:9)
2020-05-01T21:23:19.367181+00:00 app[worker.1]: at Socket.emit (events.js:310:20)
2020-05-01T21:23:19.367181+00:00 app[worker.1]: at emitErrorNT (internal/streams/destroy.js:92:8)
2020-05-01T21:23:19.367181+00:00 app[worker.1]: at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
2020-05-01T21:23:19.367182+00:00 app[worker.1]: at processTicksAndRejections (internal/process/task_queues.js:84:21) {
2020-05-01T21:23:19.367185+00:00 app[worker.1]: errno: 'ECONNREFUSED',
2020-05-01T21:23:19.367185+00:00 app[worker.1]: code: 'ECONNREFUSED',
2020-05-01T21:23:19.367185+00:00 app[worker.1]: syscall: 'connect',
2020-05-01T21:23:19.367186+00:00 app[worker.1]: address: '::1',
2020-05-01T21:23:19.367186+00:00 app[worker.1]: port: 50106
index.js代码是:
const discord = require("discord.js");
const fs = require("fs");
const bot = new discord.Client({disableEveryone: true});
const prefix = "."
const token = process.env.token;
const { ErelaClient } = require('erela.js');
function server () {
require ("./server.js");
}
// When bot ready
bot.on("ready", async () => {
server();
bot.music = new ErelaClient(bot, [
{
host: process.env.HOST,
port: process.env.PORT,
password: process.env.PASSWORD
}
]);
bot.music.on("nodeConnect", node => console.log("New node connected, music is now working on the bot!"));
bot.music.on("nodeError", (node, error) => console.log(`A node error occured: ${error.message}`));
而server.js代码是:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(7000, function () {
console.log('Example app listening on port 7000, so erela will work!');
});
我不知道为什么会这样。如果有人对此有答案。我将不胜感激
回答如下:如果您有两台服务器在同一台PC上运行,则应启用CORS以允许它们之间进行通信。
添加到server.js文件中:
const cors = require('cors')
app.use(cors())
此外,请在CLI中安装:
npm install cors
CORS npm link
希望这可以帮助您。
更多推荐
connect ECCONREFUSED :: 1:50106
发布评论