我正在开发SPA(单页网页应用程序);这个想法是轻量级的,并没有使用太多的框架和抽象和东西,所以我创建了静态+动态文件的HTTP服务器,它运行良好。现在我已经在web应用程序中实现了socket.io,但我想知道您认为什么是处理会话的好方法(请记住,socket io必须能够识别调用函数并知道的用户谁必须推送数据)。 希望我已经足够清晰:)如何在没有框架的情况下处理node.js中的会话
回答
Socket.io已经内置通过socket.get
,socket.set
和socket.del
对于给定的插座节能服务器端会话数据的方法。它保存的数据在默认情况下是一个内存存储,但是您可以使用redis等。请记住,当套接字断开连接时,该数据在重新连接时不会持续,因此您需要将您的客户端标识数据与您的套接字设置事件或在验证过程中。
因此,您的客户端数据可以通过localStorage,sessionStorage或普通旧香草饼干等持久保留。
好的,谢谢你,你认为http://www.codeproject.com/Articles/382561/Session-Management-in-Nodejs会做对吗? – Rayjax
这似乎对我有点矫枉过正,但我不知道你的用例。如果你想保持轻量级,我鼓励你在添加另一个模块之前考虑滚动你自己的基本解决方案:https://github.com/learnboost/socket.io#storing-data-associated-toa-a-客户 –
- 1. 默认情况下,Node.js会话如何处理?
- 2. 在没有有状态会话Bean的情况下使用Seam框架?
- 3. 如何在没有http会话的情况下使用CDI- @ SessionScoped
- 4. 如何在没有框架的情况下使用框架类运行代码?
- 5. 如何在没有ByRef的情况下处理异步函数?
- 6. 在没有JavaScript的情况下在PHP中检测框架?
- 7. 在没有VISIO的情况下处理VSD中的形状
- 8. 如何在没有任何框架的情况下使用带有Maven的webjar
- 9. 在Zend框架中处理会话处理的最佳方式
- 10. 如何在没有会话无效的情况下注销opencms中的用户
- 11. 如何在没有npm和Node.js的情况下使用AngularJS 2?
- 12. 如何在没有文件的情况下运行node.js脚本?
- 13. 如何在没有Node.js的情况下使用JS require()
- 14. 如何在没有内部模块的情况下构建node.js?
- 15. 会话可否在没有Cookie的情况下工作?如果是这样,在没有启用Cookie的情况下,会话如何工作?
- 16. 如何在不创建NaN的情况下处理数据框?
- 17. 如何在没有嵌套异常的情况下处理python中的文件
- 18. 如何在没有安装Office的情况下处理vb.net中的excel文件
- 19. 如何在没有API的情况下在Android中执行图像处理?
- 20. 如何在WPF中没有打印对话框的情况下直接打印?
- 21. 在没有测试框架的情况下使用Moles
- 22. 在没有第三方框架的情况下实现DI
- 23. 在没有测试框架的情况下使用Selenium 2?
- 24. PHP在没有www的情况下继续进行会话
- 25. PHP会话可以在没有Cookie的情况下工作吗?
- 26. 保持ASP.NET网站在没有会话的情况下运行?
- 27. Express会话可否在没有cookie的情况下工作?
- 28. 在没有会话cookie的情况下设计token_authenticatable
- 29. 在没有getopts的情况下处理shell脚本的标志
- 30. 在没有对话框的情况下使用onbeforeunload?
重新实现现有解决方案不会使您的应用程序变得轻量级。像[Connect](http://www.senchalabs.org/connect/)这样的框架已经非常轻便。 – lanzz