在visual studio node.js项目中使用socket.io

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在visual studio node.js项目中使用socket.io相关的知识,希望对你有一定的参考价值。

我在Visual Studio中有一个使用express的节点js项目。我想将socket.io添加到我的项目中,如下所示:

var io = require('socket.io')(server);

但是,app.js文件没有服务器变量。似乎应用程序在app.js中返回

module.exports = app;

然后在该文件之外调用app.listen,其中将创建服务器。有谁知道如何在visual studio node js项目中使用socket.io?

答案

我想到了。我将socket io代码放在它自己的模块中,如下所示:

//    ./myService.js
var socketIo = require('socket.io');

module.exports = {
    startService: function (server) {
        var io = socketIo(server);

        io.on('connection', function (socket) {
            socket.on('receive message', function (question) {
                io.emit('send message', question);
            });
        });
        return io;
    }
};

visual studio项目有一个文件“./bin/www”,其中创建了服务器变量。然后我将服务器变量传递给模块,如下所示:

var io = require('../myService');
io.startService(server);
另一答案

或者您可以直接将连接放在“./bin/www”文件中,如下所示

var io = require('socket.io').listen(server);

io.sockets.on('connection', function (socket) {
console.log('client connect');
socket.on('echo', function (data) {
    io.sockets.emit('message', data);
    });
});

以上是关于在visual studio node.js项目中使用socket.io的主要内容,如果未能解决你的问题,请参考以下文章