2014-11-01 112 views
1

HTTP是一種無狀態協議,必須使用cookie來保存狀態信息,以便HTTP應用程序可以在會話中運行。HTTPS會話/ cookies

HTTPS也是無狀態協議嗎?通過http cookies或TLS/SSL會話,使用什麼機制保持會話?

+0

https的確是無狀態的,當涉及到會話機制時,cookie有其他選擇。 – arkascha 2014-11-01 15:52:52

+0

這些替代品是什麼? – user1443721 2014-11-01 18:36:08

回答

0

HTTPS只是HTTP包裝在一層認證和加密。 (見this)。因此它就像HTTP是無狀態一樣是無狀態的。 HTTPS目前使用TLS或SSL加密層。這些協議具有狀態,但該狀態不能被應用程序用來維護其狀態。

如果您不想使用cookie來維護狀態,則可以使用HTTP Basic Authentication Mechanism。或者,您可以使用HTTP請求中的URL或表單數據發送會話信息。

+0

謝謝! HTTPS是無狀態的。它是否意味着每個HTTPS(HTTP)請求都將重新設置TLS/SSL? – user1443721 2014-11-02 21:37:33

+0

好問題!如果下一個請求出現在現有的TCP連接上,則將使用相同的TLS/SSL會話。如果沒有,那麼客戶端可以嘗試重用現有的會話。如果失敗了,那麼需要創建一個新的會話。 (如果你喜歡我的答案,請接受它們)。 – 2014-11-02 22:12:47

+0

「如果不是,則客戶端可以嘗試重新使用現有會話」。你能提供更多的信息,客戶將如何嘗試? – user1443721 2014-11-03 07:14:03