00:01
好,咱们了解一下remember me功能啊,其实这个功能呢,就跟它字面意思一样啊,就是记住我啊什么意思呢?哎,咱们的sir给咱们提供了remember me啊记住我的功能啊这块呢,咱们访问一些网站的时候,哎,比如说咱们登录了,然后呢,这块呢,诶你再去什么呢?哎,比如说关闭啊浏览器,然后呢,之后呢,再去访问这个网站的时候,诶咱们再打开的时候,诶咱们的系统还能记住你是谁啊这块呢,诶下次访问的时候,诶不需要再进行登录即可访问啊这就是咱们对应的remember me功能啊,其实这个也是比较长的一个功能了,那基本流程呢,就是在咱们首页面啊登录的时候选中remember me,然后进行登录,然后呢,这块呢,诶咱们的什么呢,一般浏览器啊,这个登录的话,咱们会把remember me啊这个相关的信息,这块呢存到咱们的cookie里面啊,这块呢写到客户端啊进行保存啊这时啊,咱们明确一下,然后之后呢,诶,咱们关闭浏览器再重新打开,会发现这个浏览器还会记住你啊这块。
01:01
诶这个对于咱们实现的时候,就相当于是诶我这块呢,诶访问一个功能进行登录,然后呢,咱们再去进行什么呢?诶通过地址再去访问的时候,哎,咱们可以直接访问对应的模块啊,这不需要再重新登录啊,这是啊咱们对应的功能实现好了,咱们说说啊了解一下remember b啊这个相关的这个操作,但是得需要会注意啊,啊这块呢,这个流程咱们明确一下,但是如果是普通功能,咱们这样remember me是可以的,但是像一些特殊功能,比如说哎,咱们访问电商平台的时候,哎,比如查看我的订单啊,或者查看咱们的一些什么的进行支付啊,这些比较关键的动作的时候,还是得进行身份认证的啊,咱们得还是得确认一下是否是本人啊,这是啊,咱们必须要注意的好,就是明确一下咱们相关流程之后呢,咱们代码实现一下它啊,带着各位跑一下这个相关的DEMO例子,好,那这块呢,首先第一个哎,咱们先去修改一下配置类,在配置类类里面啊,咱们就要设置一下remember me啊相关的哎。
02:01
在咱们的security manager里面去添加一下remember me啊相关的信息,那这块呢,直接进到咱们的呃代码当中啊,打开咱们的这个呃,对应的配置类在这里面,第四步下面咱们去添加remember me啊这个相关的设置我就不敲了啊,就直接设置一下remember me啊这个相关的信息。好,咱们添加进来啊,这个设置remember me,那这块呢,会调用,哎,在我配置类里面的remember me啊,这个咱们的呃,Remember me啊,这个manager啊,管理器的这个相关的方法,咱们也得添加相应的方法,这个也不需要咱们自己敲啊,直接参考课件添加就好啊。哎,把这个相关的呃,设置咱们的这个cookie属性,还有咱们的呃,Remember being manager啊,这个相关的方法咱们都给它复制过来,咱们看一下啊,在这可以看到该引包,引包用到咱们的simple cookie啊这个相关的对象,然后呢,在这设置一下cookie的信息啊,咱们创建新的cookie,它的名字就叫remember me啊,设置相关的参数啊,包括它的哎,最大存留时间是多少啊,咱们都设置好,然后之后呢,这个创建咱们相关的这个管理对象啊,把管理对象啊相关的方法创建出来啊,也就是咱们设置下,哎,对这个cookie啊,管理的这个remember me啊相关的这个呃,方法咱们创建出来好把。
03:25
它,哎,设置到咱们的对应的呃,往上翻啊在这儿啊,Security啊,咱们的对应的什么security manager里面设置进来就可以啊,这是完成咱们的配置操作好,配置操作完成之后呢,咱们还得去改造一下咱们controlrler啊,直接进到咱们controlr类啊,咱们进行个改造啊,就是咱们登录的时候啊,这块呢,哎,我需要什么呢?再记录一个参数啊,除了咱们的用户名密码,我这个表单还需要反馈一个什么呢?参数就是咱们的remember me啊在这儿哎,我可以把我省略的这个注解加上啊,设置相关参数啊,比如说它的设置一下它的默认值啊,它是布尔类型的默认值呢,咱们就设置成什么呢?哎,False就成,哎默认是不开启的。
04:11
哎,默认不开启啊,咱们对应的这个remember me,然后呢,设置下布尔类型的啊这个相关的值啊remember me,哎就直接在这儿啊,咱们复制一下这个名字就成啊remember me啊咱们设置一下这个标识参数啊,布尔类型的就可以,好咱们把这个参数拿到手以后呢,哎,在咱们进行什么创建这个guci的时候,就可以设置这个参数啊各位留意一下,咱们可以看到除了用户名密码第三个参数,咱们是不是可以设置入这memory密对吧?哎,布尔类型呢,是否开启remember me相关的功能啊在这什么呢?开启相关功能,好这是候咱们对应的实现一下现相关的这个呃,User login相关的方法去记住,那怎么去验证一下咱们到底能不能什么呢?哎,这个实现这个功能呢,哎,咱们到底能不能记住我呢?哎,咱们可以这么去做啊,在咱们的就controller下再创建一个新的controller方法,然后呢,也是返回到咱们的man啊这个相关的页面,登录后的这个页面传递的这个用户啊session。
05:12
里面放的用户不一样啊,咱们什么呢?来一个标识验证一下remember me啊创建一个新的呃,这个controltrl方法啊,这咱们三索课件就成非常之简单啊,请求不同路径叫user login大M啊就是remember me,咱们去验证一下我访问啊controller别的方法的时候,哎,会是什么情况啊,咱们什么呢,去确认一下啊,我这个remember me到底好不好用,那咱们还得涉及什么呢?哎,还得去啊,等会儿啊,咱们的这个在咱们的配置里面还有一项需要改造啊,在底下啊,咱们啊最下面啊,咱们对应的拦截过滤器啊这块呢,还得做一个什么相关的设置啊,在这儿添加一下remember me的一个设置,如果啊,你这个访问的地址啊,这块呢,没有带用户啊去进行访问的话,哎,我给你拦截蹦到咱们login登录方法啊,如果你带着用户啊去访问啊,你有remember me相关的信息啊,经过我校验之后,你有这个信息,我给你放行啊,你该访问什么访问什么啊,咱们加这么一项。
06:12
好,那过滤器这块呢,哎,咱们需要添加相关的过滤器啊,还是往上翻找到咱们在这儿,诶,添加咱们用户过滤器啊这块确认一下有没有这个user用户,好,咱们把这个相关的啊过滤器也添加上啊,这是呃,对于配置类的一个补充,然后呢,Controller啊,咱们也写好了,那下面就是改造页面啊,咱们把页面完成改造,还是进到咱们页面啊,这个不是log in了啊,在在这儿login下面啊,在这个phone表单下面,咱们需要添加一个标签,记住用户的一个单选框啊,咱们check box就可以啊,我就不敲了,参考课件啊,咱们直接去添加咱们div的一个标签,记住用户啊,有这么一个单选啊,咱们对应的勾选框啊,去进行一个勾选啊,Check box啊,进行一个勾选,但凡勾选上了就是记住我啊,这是咱们对应的登录认证的页面的改造,好,咱们把这块呢确认一下,诶把这个服务提起来,咱们验证一下,看到底好不好用啊。
07:12
直接跑起来。好,把咱们的服务启动起来,咱们去测试一把啊,首先咱们先去访问一下啊,这个直接没登录的时候先去访问一下user login r'm,咱们看到底能不能访问到。在这儿,哎,咱们还没有登录啊,直接通过地址访问一下这个I'm,看什么样的情况,哎,直接通过地址访问啊,很显然咱们的过滤器啊,拦截器生效了,拦截咱们请求,诶又转到什么,是不是login方法当中,对吧?啊login啊相关的界面啊,咱们需要进行一个登录操作,那咱们试一下登录啊这块张三,然后呢,啊在这儿写一下,哎,咱们呢,还是Z3相关功能,我先不勾选转版文面啊,咱们进行个登录,哎,各位可以看到是不是张三对吧?张三相关信息,然后呢,这个时候我再去访问下咱们的,哎,这个user locking I'm,咱们去访问下别的功能可以看到,也可以访问到,哎,咱们把它关掉啊,诶再打开这个浏览器,重新打开,咱们再访问一下这个user login RM咱们看下效果,直接访问一下各位什么意思,是不是只要你关闭浏览器啊,咱们登录的状态是不是就不存在了,对吧,那咱们再去试一把啊,还是张三。
08:35
那咱们再去验证一下Z3啊,咱们再去勾选一下啊相关的啊remember me啊咱们记住相关用户,诶再试一把看看啊点什么呢?登录,哎,这个张三啊,登录完成没任何问题啊,那这个时候呢,当我去啊把这个什么呢?哎,这个浏览器关闭,咱们再打开浏览器的时候,我在访问啊咱们刚刚指定的这个user login RM功能,咱们再试一把,各位是不是有登录状态,哎不需要重新登录了,这就是咱们所说的remember me啊让这个系统啊,让咱们呢,通过C啊咱们什么呢?Remember me功能啊,咱们什么呢,生成相关信息存到咱们本地的cookie里面,只要你没清除cookie啊,只要cookie没失效啊,它就可以什么呢?哎,用这个同样的身份访问同样的这些什么系统,实现这个功能访问啊,这就是咱们所说的remember me。
我来说两句