`

Cookie与Session小记

    博客分类:
  • WEB
阅读更多
http://blog.csdn.net/oooooooooooooaaa/article/details/4340724

一 Cookie的作用

     我们知道,HTTP协议是一种无状态的通信,就是说,使用HTTP请求是无法保证连续访问的。浏览器每请求一次WEB服务器,WEB服务器都认为这是一次新的请求,它并不知道该浏览器前一次也访问过。例如网上购物我们浏览商品,我到一个页面买了一件商品,又到另外一个页面买了商品,那前一次访问的页面的商品就没有了?这是不合理的。

   COOKIE是一种可以解决上述问题的方法,当服务器觉得有必要记录你的状态的时候,它就会保存COOKIE;当浏览器访问WEB服务器时,它会把COOKIE发送给服务器,这样WEB服务器就知道曾经浏览器来过。



二 Cookie的具体形态

     COOKIE是以文本文件的方式保存在客户端的,不能是其他格式,例如将一个对象序列化成文件来保存是不行的。另外,COOKIE是明文的,流氓软件、黑客等等都可以窃取COOKIE信息,所以在保存相对重要的信息时最好进行加密。比如我们实现个性化首页定制、购物网站最近浏览过的商品等功能,都可以通过COOKIE来实现。

三 HttpServletRequest#getCookies()方法研究


四 关于Session

   与COOKIE不同,SESSION是记录在服务器的内存当中的,这样用户就无法直接篡改服务器信息,而COOKIE存在客户端。SESSION以对象的形式来进行保存,因此SESSION保存的对象必须能够序列化。SESSION可以完成连续性信息的记录,比如实现用户登录权限等。

  SESSION究竟是怎样实现的?其底层实现方式有两种,URL重写和COOKIE实现。

  (1)URL重写。
  Web Server在返回Response的时候,检查页面中所有的URL,包括所有的连接,和HTML Form的Action属性,在这些URL后面加上“;jsessionid=XXX”。下一次,用户访问这个页面中的URL,jsessionid就会传回到Web Server。
  (2)Cookie。
  如果客户端支持Cookie,Web Server在返回Response的时候,在Response的Header部分,加入一个“set-cookie: jsessionid=XXXX”header属性,把jsessionid放在Cookie里传到客户端。 客户端会把Cookie存放在本地文件里,下一次访问Web Server的时候,再把Cookie的信息放到HTTP Request的“Cookie”header属性里面,这样jsessionid就随着HTTP Request返回给Web Server。
分享到:
评论

相关推荐

    JAVA之cookie与session

    ### JAVA之cookie与session #### 一、Cookie与Session的概念 **Cookie** 与 **Session** 是两种在 Web 开发中用于跟踪用户会话的重要技术。它们的主要目标是在客户端和服务端之间保持状态。 - **Cookie** 机制...

    Cookie、Session和Token三者的区别及使用

    ### Cookie、Session与Token的区别及使用详解 #### 一、Cookie **定义**: Cookie是一种用于在客户端保持状态的方案。简单来说,当你访问一个网站时,该网站可能会在你的计算机上留下一些信息(如用户名、密码等),...

    cookie和session

    ### Cookie与Session详解 在现代Web开发中,保持用户的会话状态是一项基本需求。通过Cookie与Session机制,服务器能够识别并处理用户的状态信息,从而实现更丰富的交互体验。本文将详细解析Cookie与Session的工作...

    c#实现cookie和session的登陆实例

    在Web开发中,Cookie和Session是两种常见的用户身份验证机制,尤其在C#编程语言中,它们被广泛用于实现登录功能。本实例将探讨如何在C#环境下利用Cookie和Session来处理用户登录状态。 首先,我们要理解Cookie和...

    Cookie与Session的示例代码

    在Web开发中,Cookie和...总之,Cookie与Session是Web开发中不可或缺的部分,合理利用它们可以帮助我们构建更高效、安全的Web应用程序。在设计系统时,应根据实际需求选择合适的会话管理策略,兼顾用户体验和安全性。

    cookie和session示例

    在Web开发中,Cookie和Session是两种非常重要的用户状态管理机制。它们被广泛用于跟踪用户的登录状态、个性化设置等,确保用户在不同页面之间切换时能够保持一致性体验。接下来,我们将详细探讨Cookie和Session的...

    经典收藏Cookie和Session

    ### 经典收藏:Cookie与Session机制详解 #### 一、Cookie机制与Session机制的区别 在Web开发中,为了维持用户的会话状态,通常有两种常用的技术:Cookie与Session。这两种技术各有特点,适用于不同的场景。 - **...

    Cookie与Session深入剖析图示

    在Web开发中,Cookie和Session是两种非常重要的用户身份验证和会话管理机制。...下面将对Cookie和Session进行深入剖析。...通过"Cookie与Session深入剖析图示"的学习,可以直观地了解两者的工作流程,加深理解。

    day16_cookie&session源代码.zip

    与Cookie相比,Session数据安全性更高,因为它们不在客户端可见,但服务器端存储的压力更大。 在Java Web开发中,处理Cookie和Session主要依赖于Servlet API。`javax.servlet.http.Cookie`类用于创建和操作Cookie,...

    asp.net-c#写的一个cookie和session登陆小实验

    与Cookie不同,Session数据对用户不可见,且存储容量通常更大。但是,Session依赖于客户端的Session ID来关联服务器上的数据,这个ID通常通过Cookie传递。 ```csharp // 开启Session Session["username"] = "John ...

    python中requests模拟登录的三种方式(携带cookie/session进行请求网站)

    session是在cookie的基础上,服务端设置session时会向浏览器发送设置一个设置cookie的请求,这个cookie包括session的id当访问服务端时带上这个session_id就可以获取到用户保存在服务端对应的session 二,爬虫处理...

    javaweb之cookie和session的应用

    **Cookie与Session的比较** 1. **存储位置**:Cookie存储在客户端,Session存储在服务器端。 2. **安全性**:由于Session数据存储在服务器,相对Cookie更安全,不易被窃取。 3. **容量限制**:Cookie大小一般限制为...

    PHP100视频教程 32:PHP5中Cookie与 Session详解

    1、Cookie和Session简介与区别Session信息是存放在server端,但session id是存放在client cookie的,当然php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪Cookie是完全保持在客户端的如:IE firefox...

    Cookie与session机制详解

    ### Cookie与Session机制详解 #### 一、Cookie与Session的概念及区别 在Web开发中,为了保持用户的状态信息,通常会用到两种技术:Cookie和Session。这两种技术都是用来跟踪用户的浏览活动,但它们的工作原理有所...

    Cookie与Session机制

    【Cookie与Session机制】在Web开发中,会话跟踪是必不可少的技术,用于区分不同用户的操作。常见的会话跟踪手段有Cookie和Session。Cookie是通过在客户端存储信息来识别用户身份,而Session则是在服务器端存储信息来...

    Cookie&Session;思维导图

    新手实用,内容详细,内含cookie以及session的定义,价值,使用的方法...

    cookie和session区别

    这是一份关于cookie和session的知识文档,有关于cookie是什么,图解,cookie对比session有哪些不好,session是什么图解

Global site tag (gtag.js) - Google Analytics