用telnettesting节点的websockets

我正在使用ws库在Node js中编写一个基于套接字的服务器,我想testing我的代码是否工作。 我已经看到其他地方使用telnet来testing简单的聊天服务器,但是当我启动我的服务器并执行telnet 127.0.0.1 5000,虽然输出显示“连接到本地主机”,我的服务器不会logging任何与新连接关联的任何东西。 我testing我的服务器错误或是我的服务器根本无法正常工作? 我的服务器代码如下:

var WebSocketServer = require('ws').Server , http = require('http') , express = require('express') , app = express() , port = process.env.PORT || 5000; var server = http.createServer(app); server.listen(port); var wss = new WebSocketServer({server: server}); console.log('websocket server created'); wss.on('connection', function(ws) { var id = setInterval(function() { ws.send(JSON.stringify(new Date()), function() { }); }, 1000); console.log('websocket connection open'); ws.on('close', function() { console.log('websocket connection close'); clearInterval(id); }); 

});

您连接到HTTP服务器,但没有build立WebSocket连接。 这就是为什么你的脚本不打印任何东西。

我不确定你可以手动testingwebsocket,看看握手 。

但是有几个类似telnet的程序可以和websocket一起工作。 也许wscat你正在使用的ws模块将有助于这一点。

这个小工具为我做了这个工作: https : //github.com/lafikl/telsocket

 brew tap pascaliske/telsocket brew update brew install telsocket telsocket -url ws://127.0.0.1:50000 

(对于不使用npm的人)