Node.JS教程72:用cookie实现websocket自动登录,session状态保留

会话状态的保留,即登录状态保持,是很常见、很常用的功能。

本文将介绍,在NodeJS开发中,如何实现websocket连接的会话(Session)状态保持。

注意,是websocket通信,一般常见的介绍是Http登录状态,websocket实现方案很少。

要实现的效果是:

输入帐号密码登录,登录后刷新、关闭页面均不影响登录状态、还会自动进入登录后的页面。

实现方法详细:

原理:

在服务端,当登录操作时,保存客户cookie,

如果再次有连接,检查连接请求的cookie是否与登录客户保留的cookie一致,如果一致则认为已经登录,无需再次校验。

上代码、上实例

在本例中,上述功能主要需两个文,一个服务器、一个客户端。

1、客户端index.html页面代码如下:

即一个输入帐号密码进行登录的页面。

2、服务端server.js代码如下:

代码很简洁,如上,且有详细注释。功能原理在上文中也已说明,在此不再赘述。

运行效果:

先启动服务端:

首次登录时,后面提示:

刷新或重打开页面,不需要重新输入帐号密码,会自动进入登录状态:

原创文章,不限转载。欢迎分享学习,大家一起进步。