当咱们的用户进行系统登陆时,用户名和密码的验证都是后端验证的。并且,用户登陆状态也是要后端设置的,查询数据库后,用户名和密码正确,则在session中存储一个uuid,每一个页面须要根据登陆状态判断展现相应的内容时,则判断是否有uuid这个session,且uuid不为空。好比头部的登陆按钮,在未登陆状态是显示登陆按钮,在登陆后显示用户名和头像,这些都是判断是否有uuid这个值(具体实现里,相对来讲更复杂一些)。php
咱们再来理下这个步骤:前端
向后端ajax发送用户名和密码java
后端接收到用户名和密码后,查询数据库ajax
若查询失败,则返回一个json数据,如:{"status":"-1", msg:"用户名或密码不正确"}数据库
若查询成功,则在session中存储一个值,好比uuid,而后向前端返回一个json,好比:{"status":"0", msg:"success"}json
前端js接收到返回的数据后,判断status的值,若status==0,则使用window.location.href进行跳转;其余的状态码都是登陆失败,清空密码框,让用户从新输入后端
好比登陆成功跳转到首页,首页里的php或java,须要判断session里是否有uuidsession
<nav> <?php if(isset($_SESSION['uuid']) && !empty($_SESSION['uuid'])):; ?> <!-- 若存在uuid,则不为空,则表示已经登陆 --> <a href="#">蚊子</a> <?php else ?> <!-- 没有登陆 --> <input type="button" value="登陆" /> <?php endif; ?> </nav>