2014-11-02 118 views
3

我發現某事像這樣:無狀態的餅乾VS全狀態

「狀態 - 跟蹤其用於當前事務中先前存儲的信息

無狀態 - 被處理是否它正在執行的每個交易。沒有以前存儲的信息用於當前事務

在純粹的無狀態環境中,您不需要此會話標識每個請求都將包含服務器需要處理的所有信息但許多應用程序需要維護狀態以跟蹤這個威脅無論是否會話都經過驗證以查看特定內容或跟蹤用戶正在做什麼。 「

我很迷惑所以如果無狀態會話與cookie保持狀態,所以它的意思是: 無狀態會話與cookie =會話有狀態?

再想一想,我發現信息會話無狀態是客戶端的會話和狀態是服務器端的會話。我們怎樣才能對客戶端的會議上討論,如果無狀態會話不維持會話? 感謝每一個答案。

回答

0

在純粹無國籍的環境中,你真的不需要會話或cookie。

會話和cookie都用於維護狀態。唯一的問題是在哪裏。當會話在服務器上保持狀態時,Cookie保持客戶端的狀態。

Wikipedia: Representational state transfer

會話狀態可以由服務器到另一個服務,例如一個數據庫,以保持一段持久狀態和允許驗證傳輸。

因此,通常在無狀態設計中,是的,客戶端請求之間沒有狀態。 每個客戶端請求都有足夠的信息來執行請求的操作。 但是,您仍然需要身份驗證和/或授權,以便從請求標頭(通常)標識客戶端。