【推薦閱讀】微服務還能火多久?>>>
作為web開發者,我們經常會使用到session和cookie,而且在面試的時候,面試官也會提到這兩者的區別是什麼?使用了那麼多次,我希望從使用到本質,**一下它們的情況。
我們來思考這樣乙個場景,如果在網頁開發中,有個變數我們需要長時間使用,可能在下次登入到這個頁面的時候還能使用,那麼它們的價值就體現出來了,他們能夠儲存我們所需要的資料而不需要經常性呼叫資料庫去獲取。
cookie以文字格式儲存在瀏覽器上,儲存量有限,只允許4kb;而session會話儲存在服務端,可以無限量儲存多個變數;所以session比cookie更安全。
session在**關閉後就表示會話結束,因此無法做到長時間儲存;而cookie儲存在瀏覽器上,可以做到長時間的儲存。
ps:但是需要注意的是,使用者能夠在瀏覽器上禁用和編輯cookie,因此一定不要將敏感資訊存放,以防洩露;當cookie被瀏覽器禁用,可以通過url引數形式傳遞cookie。
除了3.2小節中談到的使用者可對cookie編輯和禁用外,還用一點就是session在與客戶端連線時會生成對應的session-id,而cookie則沒有,但是客戶端獲取session需要通過cookie傳遞sessionid,所以cookie就是客戶端與session的中間橋梁。
cookie
session
面試題 6session 和 cookie
cookie採用的是客戶端的會話狀態,他是伺服器再本地 機器上儲存的一小段資訊,並且隨著請求傳送給伺服器。通過 cookie cookie new cookie 建立,通過cookie.setmaxage 設定cookie的持久化時間 session 是將資料儲存在伺服器中,會為每個客戶端都建立一塊...
面試題 PHP面試題
建議 比如是系統配置,缺少了無法執行,自然使用 require 如果某一段程式少了,只是少了統計 訪問的,不是必不可少的。可以使用 include 而加不加 once 就是效率上的區別,雖然系統會幫你考慮只包含一次,但系統的判斷會降低效率,因此,更應該在開發之初,把目錄結構調整高好,盡量不使用 on...
面試題 騰訊2012面試題
問題描述 例如手機朋友網有n個伺服器,為了方便使用者的訪問會在伺服器上快取資料,因此使用者每次訪問的時候最好能保持同一臺伺服器。已有的做法是根據serveripindex qqnum n 得到請求的伺服器,這種方法很方便將使用者分到不同的伺服器上去。但是如果一台伺服器死掉了,那麼n就變為了n 1,那...