您何时最初在访问网站时获得了唯一的http cookie?

时间:2009-03-04 22:47:59

标签: http

您何时最初在访问网站时获得了唯一的http Cookie?

我在从网站创建gui auth登录时的意义上问这个问题。你访问网站的那一刻,你得到了你的饼干吗?如果是这样,如果您没有通过主页访问该网站并直接转到http://website.com/login.php表单,如果您还没有收到它们,您最初是否也会在那里收到您的cookie?

4 个答案:

答案 0 :(得分:1)

加载设置Cookie的第一页。

它将与HTTP页眉中的该页面内容一起发送。

在PHP中:

您可以在将输出发送到浏览器之前随时设置cookie。

您可以在设置后随时阅读(通过$ _COOKIE),包括在同一页面加载中。

请记住,如果您在设置它的同一页面加载中阅读它,您将从当前进程读取它,而不是从客户端的cookie中读取它,该cookie尚未发送。

答案 1 :(得分:0)

只要您的浏览器发出http请求,服务器/应用程序就可以设置cookie。换句话说,答案是依赖于实现的。

我建议您查看Fiddler(或其他一些http跟踪工具)以更好地了解互动。

答案 2 :(得分:0)

对此没有正确的答案。这是一个实现细节,没有两个网站(使用不同的基本代码)以相同的方式。变量包括实现系统/语言(ASP,PHP,Python,Ruby等),标准化(或自定义)库的使用,网站的安全性,网站编写的时间等等。

无论您最初来自哪个页面,大多数网站都会设置您的会话Cookie。有很多方法可以做到这一点,但所有方法都涉及每个可能的入口点,调用网站源代码中的常用例程来处理会话,权限,导航,登录等。

话虽如此,我有很多网站在你做一些需要记住的事情之前没有设置任何cookie(登录,将产品添加到购物车,设置偏好等)。 / p>

如何操作取决于对您网站的重要性。对此没有单一的答案。

答案 3 :(得分:0)

以下是Cookie及其行为的官方标准:

http://www.ietf.org/rfc/rfc2965.txt

大多数浏览器会尽可能地尽量遵守此标准,但请注意,这取决于实施者。如果有错误,那么行为当然是不同的。

我认为您正在寻找的是,只要域或URI相同,就会将cookie与请求一起传入。

正如其他人所提到的,cookie可以被操纵并且本质上是不安全的。不要将它们用作安全的方式。您可以跟踪他们已成功登录,但您应该在该事实上设置过期日期。