如何在相对路径上创建多个Node.js websockets

时间:2017-12-16 06:35:55

标签: node.js

例如,如果我想运行:

var http = require('http');
var s = http.createServer();
var WebSocket = require('ws');
var WebSocketServer = WebSocket.Server;
s.on('request', (request, response)=>{
// other codes
});
s.listen(process.env.PORT || 3000);
var a = new WebSocketServer('/a');
var b = new WebSocketServer('/b');
var c = new WebSocketServer('/c');

理想情况下,我希望aprocess.env.host:process.env.PORT/a,同样适用于bc。怎么做?什么是正确的语法?

1 个答案:

答案 0 :(得分:5)

您在同一端口上不能有多个服务器。您可以实现一个webSocket服务器,然后根据传入的URL将传入的请求路由到不同的代码。这应该是你所需要的一切。

v-on:click(somefunction($for.id)

如果您希望能够根据原始路径单独向每个组广播,那么您可以根据传入路径实现连接套接字的集合,以便您可以在任何特定连接中向所有组广播。

如果你想继续想要更多这样的功能,那么也许你应该使用socket.io而不是已经内置的房间和命名空间,它们可以为你做这两件事。