• 学习笔记_Java_day12_Cookie


    Cookie

    1 Cookie概述

    1.1 什么叫Cookie

    Cookie翻译成中文是小甜点,小饼干的意思。在HTTP中它表示服务器送给客户端浏览器的小甜点。其实Cookie就是一个键和一个值构成的,随着服务器端的响应发送给客户端浏览器。然后客户端浏览器会把Cookie保存起来,当下一次再访问服务器时把Cookie再发送给服务器。

     

      Cookie是由服务器创建,然后通过响应发送给客户端的一个键值对。客户端会保存Cookie,并会标注出Cookie的来源(哪个服务器的Cookie)。当客户端向服务器发出请求时会把所有这个服务器Cookie包含在请求中发送给服务器,这样服务器就可以识别客户端了!

    1.2 Cookie规范

    l  Cookie大小上限为4KB;

    l  一个服务器最多在客户端浏览器上保存20个Cookie;

    l  一个浏览器最多保存300个Cookie;

    上面的数据只是HTTP的Cookie规范,但在浏览器大战的今天,一些浏览器为了打败对手,为了展现自己的能力起见,可能对Cookie规范“扩展”了一些,例如每个Cookie的大小为8KB,最多可保存500个Cookie等!但也不会出现把你硬盘占满的可能!

    注意,不同浏览器之间是不共享Cookie的。也就是说在你使用IE访问服务器时,服务器会把Cookie发给IE,然后由IE保存起来,当你在使用FireFox访问服务器时,不可能把IE保存的Cookie发送给服务器。

    1.3 Cookie与HTTP头

    Cookie是通过HTTP请求和响应头在客户端和服务器端传递的:

    l  Cookie:请求头,客户端发送给服务器端;

    • 格式:Cookie: a=A; b=B; c=C。即多个Cookie用分号离开;

    l  Set-Cookie:响应头,服务器端发送给客户端;

    • 一个Cookie对象一个Set-Cookie:

    Set-Cookie: a=A

    Set-Cookie: b=B

    Set-Cookie: c=C

    1.4 Cookie的覆盖

      如果服务器端发送重复的Cookie那么会覆盖原有的Cookie,例如客户端的第一个请求服务器端发送的Cookie是:Set-Cookie: a=A;第二请求服务器端发送的是:Set-Cookie: a=AA,那么客户端只留下一个Cookie,即:a=AA。

    1.5 Cookie第一例

    我们这个案例是,客户端访问AServlet,AServlet在响应中添加Cookie,浏览器会自动保存Cookie。然后客户端访问BServlet,这时浏览器会自动在请求中带上Cookie,BServlet获取请求中的Cookie打印出来。

    每天都做更好的自己,不纠结于输赢成败
  • 相关阅读:
    CI框架(Codeigniter)总结
    ssh自动下载SFTP文件
    数据库设计原则
    Java代码性能优化的 39个细节
    quartz定时任务时间设置
    Myeclipse 反编译工具插件
    Maven -- 使用Myeclipse创建Maven项目
    详解Java Web项目启动执行顺序
    java web项目下的lib和build path 中jar包问题解惑
    java读取存在src目录下和存在同级目录下的配置文件
  • 原文地址:https://www.cnblogs.com/snowwhite/p/4608429.html
Copyright © 2020-2023  润新知