最近我一直在使用HTML5和Javascript,並且對LocalStorage以及SessionStorage的功能印象深刻。這讓我想到 - 隨着這些元素的到來,cookies是否真的有了明顯的優勢呢?Cookies是否過時? Cookies與瀏覽器數據存儲
我可以用這兩個數據存儲創建持久以及會話相關數據(包括輕量以及不健壯的對象)。通過這些cookie提供什麼好處(如果有的話)?這是我們最喜愛的網絡「治療」的道路的結束?
最近我一直在使用HTML5和Javascript,並且對LocalStorage以及SessionStorage的功能印象深刻。這讓我想到 - 隨着這些元素的到來,cookies是否真的有了明顯的優勢呢?Cookies是否過時? Cookies與瀏覽器數據存儲
我可以用這兩個數據存儲創建持久以及會話相關數據(包括輕量以及不健壯的對象)。通過這些cookie提供什麼好處(如果有的話)?這是我們最喜愛的網絡「治療」的道路的結束?
......隨着這些元素的出現,cookies是否真的有了明顯的優勢呢?
是:它們會在每次請求時都發送到服務器。這是他們最初的目的,這是他們當前的目的(嗯,並且是沒有網絡存儲的瀏覽器的後備,但有幾個還剩下那些)。如果您不需要每次請求(會話標識符等)發送給服務器的信息,則Web存儲或類似服務是您更好的選擇。
餅乾從來不是好選擇純粹的客戶端數據,因爲它們增加了請求和響應的重量。他們只是只有選擇了一段時間。現在我們有更好的僅客戶端數據存儲選擇,並且我們有一小部分使用案例的Cookie,其中實際上想要信息在每次請求時自動發送到服務器。
好點。然而,我可以看到的一個可能的反參數也是使用AJAX或其他類似的組件將本地存儲對象發送到服務器(異步)。雖然這可能是更多的步驟,它會不會達到同樣的目的? (也就像在途中的Cookie一樣可以攔截/操作,對嗎?) – mattkgross
@mattkgross:是的,但是你還有很多工作要做。考慮一個網站(而不是Web應用程序)與登錄。您必須在生成頁面時或服務器端重新編寫所有鏈接,或者在頁面加載時重寫客戶端,以便爲它們添加會話標識符或使用Ajax請求覆蓋它們。對於某些類別的用例(即主要用例),* small * cookies是合適的選擇。 –
是的,加班時,他們可能會不需要localStorage和其他選項將出現。曲奇被製作〜1994年,20年的技術運行良好 – abc123