1、http無狀態(tài)協(xié)議
web應用采用browser/server架構,http作為通信協(xié)議。http是無狀態(tài)協(xié)議,瀏覽器的每一次請求,服務器會獨立處理,不與之前或之后的請求產(chǎn)生關聯(lián),這個過程用下圖說明,三次請求/響應對之間沒有任何聯(lián)系
但這也同時意味著,任何用戶都能通過瀏覽器訪問服務器資源,如果想保護服務器的某些資源,必須限制瀏覽器請求;要限制瀏覽器請求,必須鑒別瀏覽器請求,響應合法請求,忽略非法請求;要鑒別瀏覽器請求,必須清楚瀏覽器請求狀態(tài)。既然http協(xié)議無狀態(tài),那就讓服務器和瀏覽器共同維護一個狀態(tài)吧!這就是會話機制
2、會話機制
瀏覽器第一次請求服務器,服務器創(chuàng)建一個會話,并將會話的id作為響應的一部分發(fā)送給瀏覽器,瀏覽器存儲會話id,并在后續(xù)第二次和第三次請求中帶上會話id,服務器取得請求中的會話id就知道是不是同一個用戶了,這個過程用下圖說明,后續(xù)請求與第一次請求產(chǎn)生了關聯(lián)