<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                本章節主要講解如果使用Thinkphp5進行登錄功能實現 首先簡單分析一下登錄功能,由于不同的業務需要不同登錄接口。所以登錄實現功能也就不一樣,在這這里我介紹一下幾個常見的登錄場景 ### 1.最簡單的登錄邏輯思維 * 獲取前臺賬號和密碼 * 查詢對應的用戶表 * 判斷賬號是否存在 * 不存在:返回一個錯誤提示信息(用戶名不存在) * 存在:判斷密碼是否正確 * 不正確:返回一個錯誤提示信息(密碼錯誤) * 正確:如果有其他限定條件在進行判斷,這里就不做多余的判斷。返回登錄成功并且把用戶的基本信息保存在session或則cookie中。以備后續使用 ### 2.記住登錄(下次自動登錄) * 這個和上面簡單的登錄邏輯思維差不多,我重點說一下登錄正確之后的操作 * 將用戶的基本信息保存在session中 ~~~ <input type="checkbox" name="islogin" /> <span>記住密碼</span> ~~~ * 在進行一步判斷,如果有islogin的就講用戶的基本信息加密保存在cookie中 ### 3.app接口登錄 * 基本邏輯還是和最簡單的差不多,這里只說正確之后的操作 * 首先是app只認識XML和JSON格式 {result:0,data:{"token":"1_1468120108402"}}//登陸成功 {result:1} // 沒有相應用戶名: {result:2}// 密碼錯誤: {result:100}// 其它錯誤 * 如果正確,那么要傳回其相應的token,用戶得到其token之后,以后就可以使用這個token來調用其它的接口了。 ### 4.單點登錄 什么是單點登錄:一個賬號只能同時一個人登錄 基本邏輯: * 數據庫驗證,驗證賬號密碼是否正確 * 驗證成功之后操作如下: * 生成token * 把用戶基本信息保存在session中 * 把token保存在cookie中 * 返回token信息 下面才是重點: * 獲取session中用戶的基本信息 * .判斷是否存在改用戶的基本信息 * 存在: * 獲取cookie中的token * 重新再生成一個token2 * 然后進行token2和token進行比較,如果不等,說明登錄異常,進行記錄異常操作,退出登錄,返回異地登錄信息 token生成方式:(獲取客戶端ip地址+用戶唯一的信息+服務端時間)進行特殊加密 # 忠告:不同的需求有不同的功能實現,但是萬變都離不開最基礎最簡單的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看