node.js - Node js 客户端未连接到在 127.0.0.1:8080 上运行的服务器
问题描述
我正在尝试创建一个 Node js TCP 服务器和客户端。目前我在 IP 地址 127.0.0.1:8080 上运行服务器。我的客户正在尝试连接到该 IP。我不知道为什么会失败,这是我的代码:
var net = require('net');
const readline = require('readline');
var clients = [];
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
function OpenServer() {
var server = net.createServer(function(socket) {
socket.write('Echo server\n');
socket.name = socket.remoteAddress + ":" + socket.remotePort;
socket.write(socket.name + " joined the chat\n");
socket.on('data', function(data) {
socket.write('socket Received: ' + data + '\n');
});
socket.on('connect', function(data){
socket.write("new connection");
});
socket.pipe(socket);
}).listen(8080, '127.0.0.1');
}
function OpenClient() {
var client = new net.Socket();
client.connect(8080, "127.0.0.1", function() {
console.log('Connected');
});
client.on('data', function(data) {
console.log('Client Received: ' + data + '\n');
rl.question('How are you today? ', (answer) => {
// TODO: Log the answer in a database
client.write(`Thank you ${answer}`);
rl.close();
});
});
client.on('close', function() {
console.log('Connection closed');
});
}
OpenClient(); OpenServer();
这是我运行客户端时遇到的错误。
进程崩溃:错误:在 TCPConnectWrap.afterConnect [as oncomplete] (net.js:1174:14) 处连接 ECONNREFUSED 127.0.0.1:8080
我还想说,我有点不知道 IP 127.0.0.1 是什么。如果有人有更好的解决方案或更好的方法来做到这一点,我对此非常开放。
解决方案
推荐阅读
- swift - ARKit – 如何知道 3d 对象是否在屏幕中央?
- c# - 如何将 C# 值插入 MySql?
- assembly - 汇编中 2 到 100 之间所有偶数的总和
- apache - 将旧站点重定向到新站点(Apache,mod_rewrite)
- python - 我想使用圆坐标检查列表中的元素是否在该列表中另一个元素的特定范围内
- css - 引导列中的内容对齐?
- c++ - 输入巨大的二进制数 C++
- python - 将文件从 Mac (iCloud) 保存到 S3 存储桶 (AWS) 的脚本
- node.js - 使用 JWT 的安全 API
- r - 如何强制 cva.glmnet() 在弹性网络回归 mdoel 中包含指定变量?