首页 > 解决方案 > 服务器中控制器内的 Socket.js (Node.js)

问题描述

我正在使用 nodejs、reactjs mongo 和 socket.io 构建一个聊天应用程序。我的聊天应用程序包含一对一和群聊。我已经为群聊构建了一个模式,我正在插入群名及其成员和他们在表中的聊天记录。由于我是 socket.io 的初学者,我不知道在 db post 操作后需要触发的套接字逻辑放在哪里。有人可以为我推荐任何示例吗?

标签: node.jssocket.io

解决方案


相应地更新您的代码:

=> server.js文件

    // Declare socket.io
    const io = require('socket.io')(server);

    // Add middleware to set socket.io in 
    app.use((req, res, next)=>{ res.locals['socketio'] = io; next(); });

=> 在你的控制器文件中

    // Get the value of socket.io
    module.exports = your_function_name =  (req, res) => {

    const io = res.locals['socketio']
    // Use io when you need.

    });

希望这能解决您的疑问。


推荐阅读