使用nodejs / socket.io和wscat获取“套接字挂起”

我有以下nodejsnetworking套接字服务器

var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(8000); app.get('/', function (req, res) { res.sendFile(__dirname + '/index.html'); }); io.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my other event', function (data) { console.log(data); }); }); console.log("Listening on 8000"); 

当试图连接使用wscat

 wscat -c ws://localhost:8000/ 

我得到以下错误

 error: Error: socket hang up 

它使用以下JavaScript在浏览器中工作得很好

 var socket = io.connect('http://localhost:8000'); socket.on('news', function (data) { console.log(data); socket.emit('my other event', { my: 'data' }); }); 

帮助表示赞赏!

我build议你在指定传输协议时尝试连接到端点。 喜欢这个:

 wscat -c ws://localhost:3000/socket.io/\?transport=websocket 

这适用于我的情况。