當咱們的用戶進行系統登陸時,用戶名和密碼的驗證都是後端驗證的。並且,用戶登陸狀態也是要後端設置的,查詢數據庫後,用戶名和密碼正確,則在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>