登录模块
<h4>导包</h4>
<pre><code class="language-xml"> <dependency>
<groupId>hxy</groupId>
<artifactId>nafos-security</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency></code></pre>
<p><br><br><br></p>
<h4>API</h4>
<ul>
<li>
<p><strong>获取request</strong>
<code>NafosRequest request = ThreadLocalHelper.getRequest()</code></p>
</li>
<li>
<p><strong>获取用户登录的cookieId。 格式:18位数字 </strong>
<code>String sessionId = ThreadLocalHelper.getRequest().getNafosCookieId();</code></p>
</li>
<li>
<p><strong>设置cookie到respone,返回AES加密后的cookie</strong>
<code>String cookie = ThreadLocalHelper.getRespone().setCookie();</code></p>
</li>
<li>
<p>将用户信息记录到内存。如果开启redis,会同步在redis做二级缓存
<code>SecurityUtil.setLoginUser(sessionId,user);</code></p>
</li>
<li>
<p>查看用户是否登录
<code>boolean isLogin = SecurityUtil.isLogin(sessionId);</code></p>
</li>
<li>
<p>获取登录状态的user信息
<code>User user = SecurityUtil.getLoginUser(sessionId,User.class);</code></p>
</li>
<li>登出
<code>SecurityUtil.logout(sessionId);</code>
<br><br><br></li>
</ul>
<h4>注意事项</h4>
<ol>
<li>用户信息在内存以及redis缓存中记录的时间为 nafos.security.sessionTimeOut 配置的时间,默认为1800S。</li>
<li>nafos.security.isUseRedis = true的情况下并且配置了redis相关信息,redis才会记录用户信息,可用作二级缓存。</li>
</ol>