2014-12-31 53 views
1

最近我一直在使用HTML5和Javascript,并且对LocalStorage以及SessionStorage的功能印象深刻。这让我想到 - 随着这些元素的到来,cookies是否真的有了明显的优势呢?Cookies是否过时? Cookies与浏览器数据存储

我可以用这两个数据存储创建持久以及会话相关数据(包括轻量以及不健壮的对象)。通过这些cookie提供什么好处(如果有的话)?这是我们最喜爱的网络“治疗”的道路的结束?

+1

是的,加班时,他们可能会不需要localStorage和其他选项将出现。曲奇被制作〜1994年,20年的技术运行良好 – abc123

回答

5

......随着这些元素的出现,cookies是否真的有了明显的优势呢?

是:它们会在每次请求时都发送到服务器。这是他们最初的目的,这是他们当前的目的(嗯,并且是没有网络存储的浏览器的后备,但有几个还剩下那些)。如果您不需要每次请求(会话标识符等)发送给服务器的信息,则Web存储或类似服务是您更好的选择。

饼干从来不是选择纯粹的客户端数据,因为它们增加了请求和响应的重量。他们只是只有选择了一段时间。现在我们有更好的仅客户端数据存储选择,并且我们有一小部分使用案例的Cookie,其中实际上想要信息在每次请求时自动发送到服务器。

+0

好点。然而,我可以看到的一个可能的反参数也是使用AJAX或其他类似的组件将本地存储对象发送到服务器(异步)。虽然这可能是更多的步骤,它会不会达到同样的目的? (也就像在途中的Cookie一样可以拦截/操作,对吗?) – mattkgross

+2

@mattkgross:是的,但是你还有很多工作要做。考虑一个网站(而不是Web应用程序)与登录。您必须在生成页面时或服务器端重新编写所有链接,或者在页面加载时重写客户端,以便为它们添加会话标识符或使用Ajax请求覆盖它们。对于某些类别的用例(即主要用例),* small * cookies是合适的选择。 –