我正在运行一个节点应用程序,它.use
根据 HTTP 请求的子域有条件地运行其他应用程序。代码如下:
var server = http.createServer(app);
...
global.socket = io.listen(server);
...
subdomains.forEach(function (subdomain) {
var vhost = (subdomain == '_' ? '' : subdomain + '.') + domain;
app.use(express.vhost(vhost, require('./' + subdomain)));
});
现在假设我想在两个不同的子域中使用 socket.io。他们都可以访问同一个套接字,因为它在同一个端口上运行。但是,如果我尝试连接到http://sub1.domain.tld/
,任何广播也会发送到http://sub2.domain.tld/
。
有什么办法可以限制广播、发射等。基于连接的子域?