Can';t从Node.js连接到Telnet服务器 我有一个嵌入在C++应用程序中的telnet服务器,我可以连接到没有问题。 使用telnet
我想写一个节点应用程序,将连接到我的服务器,我已经尝试 这个 不幸的是,我得到的是这个Can';t从Node.js连接到Telnet服务器 我有一个嵌入在C++应用程序中的telnet服务器,我可以连接到没有问题。 使用telnet,node.js,networking,telnet,Node.js,Networking,Telnet,我想写一个节点应用程序,将连接到我的服务器,我已经尝试 这个 不幸的是,我得到的是这个 > node test.js { [Error: connect ECONNREFUSED] code: 'ECONNREFUSED', errno: 'ECONNREFUSED', syscall: 'connect' } 真正奇怪的是,如果我设置了一个简单的echo服务器,所有节点都可以工作 好的以下是正在工作的echo服务器代码: var net = require('net');
> node test.js
{ [Error: connect ECONNREFUSED]
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect' }
真正奇怪的是,如果我设置了一个简单的echo服务器,所有节点都可以工作
好的以下是正在工作的echo服务器代码:
var net = require('net');
var server = net.createServer(function (socket) {
socket.write('Echo server\r\n');
socket.pipe(socket);
});
server.listen(6502, '127.0.0.1');
从中我得到了
Sending data
received data
Echo server
hello
是否有任何理由:
- 我可以远程登录我的应用程序
- 我可以从节点连接到同一端口上的节点回显服务器
- 如果我从节点应用程序连接到应用程序,则连接被拒绝
- 关于OSX(小牛)
- 节点版本0.10.28
- C++中的telnet服务器是通过嵌入式Lua和LuasoCKET(Lua 5.1) 提供的
在末尾添加:
server.listen(端口)代码>net.connect的原型是(选项,回调)
看
然后,我建议您针对标准telnet服务器测试代码,看看它的行为如何,最后我强烈建议使用jshint或jslint。解决了
问题是我的应用服务器中的代码绑定到localhost,并且默认情况下
绑定到::1的IPV6地址的
将主机localhost传递到net.connect时采用IPV4,不起作用
mac命令行telnet和nc都可以很好地处理这个问题,并且连接正确
两种解决方案:
- 应用程序绑定到127.0.0.1,节点中的localhost工作正常
- 在test.js中将主机地址设置为::1,并通过ipv6连接
但现在已全部修复:)
<> > Gas当您成功连接到C++ telnet服务器时,使用的是 telnet < /Cuth>命令行?RLCONTEL telnet本地主机6502NET.Connect是多态的,NET。Connect(端口,[主机],[ Connect ListNe] ]也起作用。在链接到的页面上向下滚动一点:)我没有尝试创建侦听的服务器。我正在尝试从节点连接到一个已经运行的服务器,并且可以使用命令行telnetThanks进行共享!
Sending data
received data
Echo server
hello