我正试图在Node.JS上构建一个内容管理系统,到目前为止,我只通过包含MySQL模块来构建一切。我想继续构建所有的CMS核心模块,而不使用像Express这样的外部库。我现在正在进行用于登录目的的会话。到目前为止,我可以使用头文件Set-Cookie创建Cookie,其中存储了用户的一些信息,以便在他/她加载站点中的所有页面时识别其会话,但我仍然找不到在不使用express或其他框架的情况下创建会话变量的方法。
如果有人能给我举一些例子,我将不胜感激。
发布于 2019-06-26 04:55:12
首先,除非你仅仅因为想要学习如何自己做所有事情而自己构建东西,否则真的没有理由重新发明已经在现有模块中很好地设计的东西。因为这是服务器端代码,所以使用已经测试过的模块来执行您想要的操作实际上不会有任何损失。因此,我的第一个建议是使用Express和express-session。它为你做了所有的会话管理,并将给你更多的时间来处理你的项目的各个方面,这将真正帮助它成功或失败。
而且,首先使用node.js的最大好处是能够使用NPM和Github提供的庞大的现有代码库。
从概念上讲,以下是会话在node.js/web浏览器客户端/服务器世界中的工作方式。
从客户端到response.
如果要实现自己的会话系统,则必须能够创建这些唯一的会话cookie并创建某种类型的会话存储(可以是从内存中的Map对象到数据库的任何内容),实现会话过期和会话存储清理,然后提供适当的中间件或实用程序函数,以便在任何单独的http请求上使用。
https://stackoverflow.com/questions/56761165
复制相似问题