获取“套接字挂断"使用 nodejs/socket.io 和 wscat [英] Getting "socket hang up" using nodejs / socket.io and wscat

查看:33
本文介绍了获取“套接字挂断"使用 nodejs/socket.io 和 wscat的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下 nodejs 网络套接字服务器

I have the following nodejs web socket server

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 运行良好

It works just fine in browser with the following javascript

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

感谢帮助!

推荐答案

我建议您在指定传输协议的同时尝试连接到端点.像这样:

I suggest that you try connecting to endpoint while specifying transport protocol. Like this:

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

这适用于我的情况.

这篇关于获取“套接字挂断"使用 nodejs/socket.io 和 wscat的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆