如何使用Socket.io和Express

时间:2017-10-23 12:33:54

标签: node.js session express socket.io

我正在使用带有socket.io的express和带有express-socket.io-session的express-session,它可以帮助我将会话连接到我的套接字实例。

这是我用于聚类的代码

var cluster = require('cluster')

if(cluster.isMaster) {
    // imports
    const http = require('http'),
        socketIO = require('socket.io')

    var server = http.createServer(),
        io = socketIO(server)

    for (var i = 0; i < 3; i++) {
        cluster.fork()
    }

    cluster.on('exit', function(worker, code, signal) {
        console.log('worker ' + worker.process.pid + ' died code: ' + code + 'signal: '+ signal)
    })

}

if(cluster.isWorker) {
    var express = require('express'),
        app = express(),
        deploy = require('./main.js'),
        server = require('http').createServer(app),
        io = require('socket.io').listen(server)

        // add store here.

        // deploy and listen
    deploy(app, io)

    console.log(cluster.worker.id)
    app.listen(8080)
}

部署功能运行会话,路由等内容。

POST http://localhost:8080/socket.io/?EIO=3&transport=polling&t=Lz9Ey8p 404(未找到)

1 个答案:

答案 0 :(得分:0)

我找到了答案,但我会将其公开,以便将来如果有人遇到这个问题,那么他们可以立即快速设置。

您需要使用粘性群集,请参阅this config for Express