【发布时间】:2018-10-04 20:05:23
【问题描述】:
开发基于 expressJS 和 Socket.io 的 Web 应用程序。 在the following post 中,我看到了中间件语法的使用,这对我来说是新的。下面是一个语法示例:
const io = require('socket.io')();
io.use(function(socket, next) {
// execute some code
next();
})
.on('connection', function(socket) {
// Connection now authenticated to receive further events
socket.on('message', function(message) {
io.emit('message', message);
});
});
它基本上在socket.io 实例上使用中间件函数。我之前的理解是 middlware 只能用在 express 实例上(app.use(...))。
问题:
- 这种语法是否只是与
app.use(...)类似的常规中间件? - 如果不同,有什么区别?
【问题讨论】:
-
我很困惑,'io.use'中的回调有'else'但没有'if'。
-
是的抱歉现在编辑有误
标签: javascript node.js express websocket socket.io