javascript – node.js / Express / Connect / Socket.io的关系

我糊涂了.我的主要问题是,何时使用纯node.js,何时我应该使用像“express”或“connect”这样的框架/ MVC.

我知道“express”只是为“连接”添加了一堆功能,但它真正有用的是什么?可以说,我希望我的所有HTTP内容都针对“Apache”服务器,并且只对node.js做一些部分内容(如WebSocket连接,CouchDB等).

在这种情况下,出于某种原因使用“express”或“connect”是否有意义?

据我所知,Socket.IO还处理HTTP请求作为回退,所以它是否足以使用Socket.IO来满足这些需求?

使用Express / Connect还有什么大优势?

解决方法:

Express(或Connect)是HTTP Web应用程序的应用程序框架.这是您的应用程序的切入点.它提供了一些非常常见的功能,例如:

> HTTP服务器
> URL路由
>请求args
>会话

它还允许轻松使用其他功能(称为中间件),例如身份验证处理,模板化.

如果您只想通过SocketIO实现发布/订阅服务,而不使用任何页面或其他API,只需使用Socket.io库(S.io主页示例):

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

io.sockets.on('connection', function (socket) {
    socket.emit('news', { hello: 'world' });
    socket.on('my other event', function (data) {
        console.log(data);
    });
});

如果你想在更复杂的应用程序,服务页面和API中使用Socket.io,你可以(必须)将它与Express集成(见How To Use)

相关文章

根据官网 入门 express
java叫接口control什么的app.get.post等等都是请求方式我们可...
为了前端丢进去的时候可以直接判断中间件就是经过了这个就会...
Express 文件的上传和下载
运行命令下载app.js 增加中间件。
基本模板来的 后面用后就有什么加什么都行。