微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

网络应用程序 – Cookie如何工作?

我想知道cookies的所有可能用途.他们好还是坏?他们如何工作?

我收集的一些最佳实践,

为组件使用Cookie免费域

标签:cookie

当浏览器发出请求静态图像并将cookie发送到请求时,服务器对这些cookie没有任何用处.所以他们只是创造网络流量没有好的理由.您应该确保使用无Cookie请求请求静态组件.创建一个子域并托管所有静态组件.

如果您的域名是www.example.org,您可以在static.example.org上托管静态组件.但是,如果您已经在顶级域名example.org上设置了Cookie,而不是www.example.org,那么对static.example.org的所有请求都将包含这些cookie.在这种情况下,您可以购买一个全新的域名,在那里托管静态组件,并保持此域免费. Yahoo!使用yimg.com,YouTube使用ytimg.com,Amazon使用images-amazon.com等.

在无Cookie域中托管静态组件的另一个好处是某些代理可能拒绝缓存使用Cookie请求的组件.在相关的说明中,如果您想知道您是否应该为您的主页使用example.org或www.example.org,请考虑cookie的影响.省略www让您别无选择,只能将Cookie写入* .example.org,因此出于性能考虑,最好使用www子域并将该cookie写入该子域.

实施限制

实际的用户代理实现对可以存储的Cookie的数量和大小有限制.一般来说,用户代理的cookie支持应该没有固定的限制.他们应该努力存储尽可能多的常用Cookie.此外,一般用户代理应该单独提供以下每个最小功能,尽管不一定同时:

* at least 300 cookies
* at least 4096 bytes per cookie (as measured by the characters that comprise the cookie non-terminal in the Syntax description of the Set-Cookie2 header,and as received in the Set-Cookie2 header)
* at least 20 cookies per unique host or domain name

为特定目的而创建的用户代理或容量有限的设备应至少提供20个4096个字节的cookie,以确保用户可以与基于会话的源服务器进行交互.

Set-Cookie2响应头中的信息必须完整保留.如果由于某种原因存在cookie的空间不足,则必须将其丢弃,而不会被截断.应用程序应尽可能使用尽可能少的Cookie,并且应该优先处理Cookie的丢失.

解决方法

是刀好还是坏?
简化说明:网络服务器向客户端发送一些文本.
这有额外的来源(谁发送)和“生命周期”(客户端持续多久).

根据您的设置(浏览器安全性),您的浏览器将存储此“文本文件”.
当您再次联系服务器(站点)时,您的浏览器将cookie发送到服务器.

简单的例子:我让你选择我的网站上的字体大小(中小).
当你选择你的大小我(服务器)给你一个cookie.
下次访问我问这个cookie是否存在 – 如果是这样,我会根据cookie内容设置字体大小.

Cookie之后还有一个安全漏洞 – 一个cookie只发送给发行者一个例子.

曼弗雷德

原文地址:https://www.jb51.cc/html/230616.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐