【问题标题】:Should I use Express for my simple chat application?我应该将 Express 用于我的简单聊天应用程序吗?
【发布时间】:2014-01-22 11:43:39
【问题描述】:

我正在创建一个简单的聊天客户端,它将使用 Socket.io websockets 连接到 Node.js 服务器。

我的客户端 js 代码(简化)如下所示:

socket = io.connect('http://localhost:3000');
socket.emit('send message', 'Hi to all');

我的服务器 js 代码(简化)如下所示:

var express = require('express');
var app = express();
var server = require('http').createServer(app).listen(7000);
var io = require('socket.io').listen(server);
io.sockets.on('connection', function(client){
    client.on('send message', function(msg){
        // Code for saving the message in mysql database is ommited
        client.broadcast.emit('new message', msg);
    });
 });

每条消息在广播给其他客户端之前都会被保存到一个mysql数据库中。

如您所见,我的服务器 js 代码使用 Express。我的需求真的需要 Express 吗?

我读到 Express 是一个用于静态文件服务器、路由管理、cookie 解析器、表单编码和 JSON 编码的正文解析器、日志记录、视图渲染和其他好东西的框架。我不需要这些功能(或者也许我需要,但我还不知道)。

互联网上的许多 node.js + sockets.io 示例都使用 Express,所以我不确定我是否真的需要它。我应该使用 Express 框架吗?如果是,为什么?如果不是,为什么?

谢谢

【问题讨论】:

  • 基于意见的问题,你最好上reddit。
  • @mpm 我敢打赌,这里是否需要 Express(socket.io 示例中几乎总是提到 )是一个正确的问题。

标签: node.js express socket.io


【解决方案1】:

不,在这种情况下你不需要 Express,因为你没有使用它 :) socket.io 也可以在没有 Express 的情况下运行:

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

io.sockets.on('connection', function(client){
  client.on('send message', function(msg){
    // Code for saving the message in mysql database is ommited
    client.broadcast.emit('new message', msg);
  });
});

【讨论】:

    猜你喜欢
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-25
    相关资源
    最近更新 更多