2017-07-21 47 views
4

用戶通過身份驗證後,用戶的後續請求不需要再次進行身份驗證。這是使用JSESSIONID實現的。
但我不確定的是,JSESSIONID是如何傳遞的?作爲標題字段或cookie字段。或者由應用程序開發人員選擇一種或另一種方法。JSESSIONID是如何傳遞的?作爲標題參數還是作爲cookie參數?

有人可以解釋當spring-security用於認證和授權時這是如何工作的。

+1

一個cookie領域*是*頭字段。 – EJP

+1

明白了 - 它是幾個可能的頭域中的一個域。謝謝。參考 - https://en.wikipedia.org/wiki/List_of_HTTP_header_fields – joveny

回答

3

除非和直到用戶會話被銷燬,否則JSESSIONID對於特定用戶將是相同的。如果您想將相同的會話設置回用戶,您可以從HttpServletRequest獲取JSESSIONID並將其設置爲HttpServletResponse。這是內部發生的事情。

每個請求都與會話相關聯,並且您的應用程序將由不同用戶的不同會話訪問。

如果在任何情況下您的用戶瀏覽器會丟失JSESSIONID,但您希望他繼續使用您的應用程序,則必須進行設置。

通過存儲在你的cookies默認JSESSIONID就是當你明確你的cookies,您將所有的應用程序,你在已登錄被註銷的原因。