cookie在浏览器中的含义

时间:2014-04-28 16:04:45

标签: cookies

我发现浏览器中的cookie是一个随机字符串,Web服务器发送给每个客户端以便记住用户'信息目的。但是我不了解程序员的观点,cookie用于什么? 例如,我在Chrome浏览器中使用了EditThisCookie扩展程序来阅读wikipedia.org网站的Cookie,如下图所示。这个cookie(sessionId)的价值对于程序员来说是无用的(编辑:我的意思是我不会从这个cookie中提取任何信息,我知道cookie对于Web开发人员来说非常重要,所以很抱歉我的表达不好)。如果我得到这个cookie,我可以了解哪些关于用户的信息? 寻求一些帮助!非常感谢你!

关于cookie的例子

http://i102.photobucket.com/albums/m86/dienkun1/cookie_example_zps455f0dad.png

编辑:对不起,我刚以错误的方式表达了我的问题。 实际上,我打算写一个用于收集用户的扩展程序。通过用户的偏好' cookie,但我无法理解从cookie中提取哪些信息。我在很多文档中都读过关于cookie的内容,比如维基百科,所有这些都只是展示如何获取cookie,cookie的定义,分类......以及我们可以从cookie中获取哪些信息。 非常感谢你!

2 个答案:

答案 0 :(得分:1)

为什么你说sessionId对程序员来说没用?它实际上非常有用。在维基百科服务器的某个地方,他们可能会存储有关您会话的大量信息。这可能包括您是否已经隐藏了其中一个筹款横幅(以便它不会一次又一次地向您展示),以及基本功能所需的内容,例如用户您目前登录为。

然而,维基百科正在为数百万个会话存储相同的信息。它需要一种方法将信息绑定回每个浏览器。那个sessionId就是这样做的。当您第一次访问该页面时,它会在一个cookie中设置sessionId,并且该cookie会随着您现在发出的每个请求被发送回服务器。然后他们在后端有代码从cookie中读取sessionId并使用它来查找特定于你的会话的所有信息,并做任何需要做的事情。

您当然可以将会话信息本身存储在Cookie中,但是存在一些问题。首先,每个cookie的大小以及单个域的所有cookie的总大小都有限制。您要存储的某些数据可能甚至不适合。但更大的问题是最终用户很容易操纵cookie。如果您存储了用户以cookie身份登录的用户的信息,则用户可以将该值更改为其他值,然后突然以其他人身份登录!当然,用户也可以将其sessionId更改为其他用户的会话并突然以其身份登录。这就是为什么会话ID需要尽可能随机,并且应该足够长,以至于猜测其他人基本上是不可能的。

答案 1 :(得分:0)

那么,如果有人无法将会话ID写入cookie,为什么会这么做呢?

Cookie(例如)识别您网站上的用户非常有用,因此您可以让他们立即登录,计算他们的访问次数,在您的网站上跟踪他们甚至更多...仅举几个用例。

引用一个有点受欢迎的网站(wikipedia.org):

  

Cookie旨在成为网站记住有状态信息(例如购物车中的商品)或记录用户浏览活动(包括点击特定按钮,登录或记录哪些页面)的可靠机制早在几个月或几年前,用户就访问了它。)

这里最重要的词是"有状态"。

相关问题