Node.js 插座io室(平均堆栈)

Node.js 插座io室(平均堆栈),node.js,socket.io,mean-stack,Node.js,Socket.io,Mean Stack,我正在建立一个买卖网站,是建立在平均堆栈。我计划使用socket.io。下面是我的网站的工作方式 用户将注册并登录 他们可以发布一个项目,或者购买/出售 其他用户可以提供给帖子(我将在此使用socket.io,以便发布该项目的用户将收到通知) 海报将有一个选项来查看当前的优惠,然后他们将选择接受谁 一旦他们接受报价,海报和报价的用户都将与他们进行交流(聊天室) 因此,当海报接受客户的提议时,它将为他们打开一个聊天室进行交流。所以我的问题是,我将使用socket io房间。一旦海报接受邀请,他们两

我正在建立一个买卖网站,是建立在平均堆栈。我计划使用socket.io。下面是我的网站的工作方式

  • 用户将注册并登录
  • 他们可以发布一个项目,或者购买/出售
  • 其他用户可以提供给帖子(我将在此使用socket.io,以便发布该项目的用户将收到通知)
  • 海报将有一个选项来查看当前的优惠,然后他们将选择接受谁
  • 一旦他们接受报价,海报和报价的用户都将与他们进行交流(聊天室)
  • 因此,当海报接受客户的提议时,它将为他们打开一个聊天室进行交流。所以我的问题是,我将使用socket io房间。一旦海报接受邀请,他们两人都将加入聊天室(因此我将为他们生成一个聊天室并自动加入),然后这个聊天室将保存到MongoDB,然后他们发送的每一条消息都将保存到数据库中。这样,即使他们注销,也可以查看其邮件的历史记录

    这是最好的方法吗

    • 为两者创建一个房间(保存到DB)
    • 每次他们互相发送消息时都保存到数据库中
    • 当他们登录时查询数据库,以获取用户已加入的房间列表,以便他们可以查看他们所拥有的消息

      • 这可能是最好的方法。下面是一个类似的问题,它显示了如何保存消息历史记录

        您不必保存消息,但如果希望以后能够看到消息,则应将每条消息保存到数据库中。如果不将每条消息保存到数据库,则重新加载页面时,以前的所有消息都将消失

        如果你想要一个免费的数据库,将免费托管小型猫鼬数据库。在演示如何使用mongoLab时,它不使用socket.io,但实现起来可能非常简单


        希望这有帮助!请随时提出以下任何问题。

        那么,每当我向聊天室发送消息时,总是保存到数据库是否是一种最佳做法?和其他用户一样如果你想保存历史记录,是的。你使用的是哪个平均堆栈,Meanjs.org还是Mean.io?在决定使用哪个方面有困难。