<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] # 會話管理 ****** 在 http 協議中,我們了解到了,http 每次請求都是握手/揮手,第二次和第一次請求時沒有任何關聯的,屬于無狀態協議,那么問題來了,既然 http 是無狀態協議,那服務器是怎么區分不同的用戶呢?這就是會話了。 <br /> ## 基礎講解 服務器能區分用戶的原理主要就是在于會話,每次發起 http 請求時,都附加上一條身份識別數據,例如下面的這個 http 請求頭: ``` GET / HTTP/1.1 Host: www.easyswoole.com Connection: keep-alive Pragma: no-cache Cache-Control: no-cache Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4094.1 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.8 Cookie: Hm_lvt_4c8d895ff3b25bddb6fa4185c8651cc3=1541986142,1542074627,1542158990,1542252497; Hm_lpvt_4c8d895ff3b25bddb6fa4185c8651cc3=1542252498 ``` <br /> 拋開 http 本身需要的數據,我們講解下: ``` User-Agent: 用戶端信息,瀏覽器的各種信息 Cookie: cookie會話 ``` <br /> 服務端可以通過 User-Agent 獲得用戶的瀏覽器信息,可以通過 cookie 獲取自定義的信息,所以我們可以: * 用戶 A 第一次進入,沒有附帶 cookie * 服務端記錄這個用戶,響應頭增加一個 set_cookie:id=1 的 cookie * 瀏覽器獲得響應頭,解析到 set_cookie 動作,把 id=1 存進 cookie * 第二次請求服務端,帶上 id=1 的 cookie,服務端就可以知道:這次請求是用戶 A 請求的 * 同理,用戶 B 第一次進入,服務端響應 set_cookie:id=2 * ... 可以看出,只要用戶端每次請求,跟服務端約定好一個參數作為用戶標識,服務端就可以通過這個標識區分不同的用戶了。
                  <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>

                              哎呀哎呀视频在线观看