繁体   English   中英

Javascript Websocket-如何使发送数据像在socket.io中一样?

[英]Javascript websocket - how to make sending data like in socket.io?

就像标题所说,有没有办法像在socket.io中那样在websocket中发送数据?

我正在将uWS与nodejs用作服务器。

我的意思是这样的:

// client
var ws = new WebSocket('ws://localhost:3000/');

ws.send("event1",{data1:100,data2:500,etc:"so on"});

// server

//receive that message like so
ws.on("event1",function(data){
    console.log(data.data1,data.data2,data.etc)
    ws.send("sendbackThisMessage",data);
});

// client

//receive that message like so
ws.on("sendbackThisMessage",function(data){
    console.log(data.data1,data.data2,data.etc)
});

将socket.io引擎替换为uWS引擎

const http = require('http');
const express = require('express');
const socketIO = require('socket.io');
const uws = require('uws');

const app = express();
const server = http.Server(app);
const io = socketIO(server);

io.ws = new uws.Server({ perMessageDeflate: false, noServer: true });

io.on('connection', (socket) => {
  io.emit('data', 'hello!'); 
  // or
  socket.emit('data', 'hello')
});


server.listen(3000, () => console.log('Socket.IO Running...'));

在该版本上进行了测试:

节点:v7.8.0

"dependencies": {
  "express": "^4.15.3",
  "socket.io": "^2.0.3",
  "uws": "^8.14.0"
}

基于udgwebdev的基础,但是该站点的示例对我不起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM