在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的主要内容,如果未能解决你的问题,请参考以下文章
使用 Visual Studio 2012 express 进行 TypeScript、node.js 开发
visual studio 2019 中初始化 vue.js 项目
Visual Studio Code Node.js 在运行 npm start 命令时在 Mac 中给出权限被拒绝错误