博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于Cookie
阅读量:5907 次
发布时间:2019-06-19

本文共 1318 字,大约阅读时间需要 4 分钟。

关于Cookie

  • 概述:

    • cookie是浏览器提供的一种技术

    • cookie使得一些只需保存在客户端,或者只需客户端进行处理的数据被保存在客户端计算机中,不用经过网络传输,因而提高了网页响应速度,降低了服务器端的负载

    • 但是由于信息被保存在客户端,所以使用了cookie技术的web 网站的安全性相对较差

    • cookie中可以包含许多信息,但是至少有一个JSEESIONID,这个JSESSIONID是客户端连接到服务器时,服务器为客户端自动分配的,使用JSESSIONID可以唯一的标识每一个客户端。
    • 除了服务器端为客户端自动分配的JSESSIONID之外,程序员还可以通过response.addCookie(Cookie cookie)向客户端添加其他的Cookie对象
    • 客户端每次向服务器端发送请求时,都会将自己机器上保存的cookie信息发送到服务器,所以服务器也可以获取客户端的cookie信息状态
        • 服务器端如何获取客户端已经设置的cookie信息:JSP中可以通过web container提供的request对象来获取,request.getCookies() 
    • 虽然Cookie可以保存一些信息,但是不能无限制的保存,一般一个客户端最多只能保存300多个Cookie。   
  • cookie的应用场景:

    • 实例一,如一些网站可以记住用户账号和密码(具体代码参见)

    • 实例二,

  • 编程思路:(如何使用cookie技术)

    • step1,了解一些基础知识

        • 1)java EE中提供了一个专门用于操作cookie的类:javax.servlet.http.Cookie

            • 了解上述Cookie类中的常用成员方法、构造函数

        • 2)在JSP的scriptlet中可以使用Cookie类,也可以使用九大内置对象中的request和response来操作Cookie
            • 了解JSP 9大内置对象中response对象的成员方法response.addCookie(Cookie cookie)的用法:使用这个函数可以由服务器向客户端添加Cookie对象(实质上也就是一个key-value对儿)

            • 了解JSP 9大内置对象request对象的成员方法request.getCookies()的用法
    • step2,创建Cookie对象

    • step3,使用response..addCookie(Cookie cookie)将step2中新建的cookie对象添加到客户端浏览器  

    • step4,step2-step3通过response对象设置到客户端的cookie可以被客户端机器获取并作后续处理,这些cookie信息被保存在客户端机器中(生存时间由相应设置来决定),不用服务器端重复传送,客户端机器可以随时取用,

    • step5,由于客户端每次向服务器端发送请求时,都会将本地机器中保存的cookie信息放在header头信息中一起发送到服务器端,所以服务器端也可以获得保存在客户端机器中的cookie对象的值,并根据客户端机器中的Cookie的值作出后续操作    

转载于:https://www.cnblogs.com/lxrm/p/6755894.html

你可能感兴趣的文章
IOS开发基础知识--碎片22
查看>>
heredoc和nowdoc的区别
查看>>
java学习笔记2015-6-6
查看>>
MAC 如何使用Github Desktop 客户端
查看>>
盗墓笔记——路由器密码破解
查看>>
akka---Getting Started Tutorial (Java): First Chapter
查看>>
iOS开发之网络数据解析(二)--XML解析简介
查看>>
HTTPS科普扫盲帖
查看>>
iOS应用架构谈 开篇
查看>>
通过Ajax方式上传文件,使用FormData进行Ajax请求
查看>>
python 统计单词个数
查看>>
虚拟机VirtualBox 5.1.0|VBOX
查看>>
jboss漏洞导致服务器中毒
查看>>
nodejs(二) --- 重要知识点回顾
查看>>
python接口自动化4-绕过验证码登录(cookie)
查看>>
OOM killer(Out Of Memory killer)
查看>>
(转)从最大似然估计开始,你需要打下的机器学习基石
查看>>
目前机器学习和深度学习能做些什么?
查看>>
一些你可能需要的okhttp实现
查看>>
RN与android原生开发混合后的环境报错问题
查看>>