首页 > 其他分享 >会话技术

会话技术

时间:2023-01-10 17:56:34浏览次数:29  
标签:浏览器 技术 会话 cookie Cookie 共享 客户端

*会话技术:

  1.会话:一次会话中包含多次请求和响应。

    *一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到一方断开为止

  2.共享数据:在一次会话的范围内的多次请求间,共享数据

  3.方式:

    1.客户端会话技术:Cookie

    2.服务器端会话技术:Session

Cookie:

  1.概念:客户端会话技术,将数据保存到客户端

  2.快速入门:

    *使用步骤:

      1.创建Cookie对象,绑定数据

      2.发送Cookie对象

      3.获取Cookie,拿到数据

//创建cookie对象
Cookie c = new Cookie("msg","hello");
//发送对象
resp.addCookie(c);
//接收对象
Cookie[] cookies = req.getCookies();
//遍历数组
if (cookies != null) {
    for (Cookie cookie : cookies) {
        String name = cookie.getName();
        String value = cookie.getValue();
        System.out.println(name + ":" + value);

    }
}

  3.cookie的细节:

    1.一次可不可以发送多个cookie?

      *可以,可以创建多个cookie对象,使用response调用多次addcookie方法发送cookie

    2.cookie在浏览器能保存多长时间?

      1.默认情况下,放浏览器关闭后,cookie数据被销毁

      2.持久化存储:

         *setMaxAge(int seconds)

            int:正数:将cookie数据写到硬盘的文件中。持久化存储。cookie的存活时间,秒数

              负数:默认值

               零:删除cookie信息

    3.cookie能不能存中文?

      *在tomcat 8之前cookie不能存中文

        *需要将中文数据转码--一般采用url编码

      *在tomcat 8之后cookie可以存储

    4.cookie获取范围多大?

      1.假设在一个tomcat服务器中,部署了多个web项目,那么在这些web项目中不能共享cookie

        *setPath(String path):设置cookie的获取范围。默认情况下,设置当前的虚拟目录。 

        如果要共享,则可以将path设置"/”。

      2.不同的tomcat服务期间cookie的共享问题?

        setDomain(String path):如果一级域名相同,那么多个服务器间cookie可以共享

          *setDomain(".baidu.com"),那么tieba.baidu.com和news.baidu.com中cookie可以共享。

  4.cookie的特点和作用

    特点:

      1.cookie存储数据在客户端浏览器。

      2.浏览器对于单个cookie的大小有限制,以及对同一个域名下的总cookie数量也有限制。

    作用:

      1.cookie一般用于存储少量的不太敏感的数据

      2.不登陆的情况下,完成服务器对客户端的身份识别

标签:浏览器,技术,会话,cookie,Cookie,共享,客户端
From: https://www.cnblogs.com/lin513/p/17040976.html

相关文章