Cookie技术分析与理解
来源:互联网 发布:js防水涂料jwfs 编辑:程序博客网 时间:2024/09/21 09:02
Cookie技术分析与理解
本文主要介绍cookie技术的使用与分析。
- cookie是什么
- cookie的使用方法
- cookie的应用场景
- cookie使用需注意的细节
- cookie是什么
首先引入度神的解释:Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于RFC2109和2965都已废弃,最新取代的规范是RFC6265[1] 。(可以叫做浏览器缓存)
博主俗人的理解:cookie就是服务器端为了保存某些数据,或实现某些必要的功能,当用户访问服务器时,从服务器回传到客户端的一个或多个数据,这些数据因设置的保存时间不同,故保存在浏览器内存中或写入用户PC的硬盘当中,当下次用户再次访问服务器端时,则带着这些文件去与服务器端进行联系,这些数据或写入硬盘当中的数据文件就是cookie。
2.cookie的使用方法
以下为cookie简单例子一个,用于显示用户上次访问的时间
response.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); response.getWriter().print("您上次访问时间是:"); //获取cookie集合 Cookie cookies[]=request.getCookies(); //获取名字为lasttime的cookie值 for(int i=0;cookies!=null && i<cookies.length;i++){ if(cookies[i].getName().equals("lasttime")){ long cookieValue=Long.parseLong(cookies[i].getValue()); Date date=new Date(cookieValue); response.getWriter().print(date.toLocaleString()); } } //创建cookie Cookie cookie=new Cookie("lasttime",System.currentTimeMillis()+""); //设置cookie有效期,单位为秒 cookie.setMaxAge(1*24*3600); //设置cookie有效域 cookie.setPath("/Learn1"); //将cookie添加到response response.addCookie(cookie);
3 . cookie的应用场景
cookie的应用场景有很多,最具代表性的当属网站的记录用户账号和密码的功能了,大家可能经常看到登录某某论坛,某某网站时,下面有个选项为N天内自动登录,其实这就是cookie的应用。当用户第一次输入账号密码时给服务器发送请求时,服务器会根据账号密码回写一个字符串cookie,当用户下次再向该服务器发送登录请求时,则带着这个字符串cookie一起去访问服务器,这时,服务器只需要对比次字符串和数据库中存储的字符串是否相同,则可以达到用户自动登录功能。
4 . cookie使用需注意的细节
- 在创建cookie时,如果不设置cookie的有效期,则默认为一个会话有效期(及浏览器关闭之前)。
- cookie的有效域若不设置,则有效域为当前web资源servlet所在文件夹域。
- 如想删除客户端cookie,则需将cookie的有效期设置为0及可,但作用域要与原作用域相同(path)。
- 一个cookie是有大小限制的,一般为4K左右,每个Web最多为20个cookie。
本人水平有限,如有错误请指正,我会及时修改
0 0
- Cookie技术分析与理解
- Session技术分析与理解
- Session技术分析与理解
- Cookie会话技术分析
- session和cookie的一些理解与分析
- 深入分析理解session与cookie的作用
- 理解Session与Cookie
- 理解Session与Cookie
- Cookie与Session分析
- java web会话跟踪技术(深入理解HTTP Session与Cookie)
- java web会话跟踪技术(深入理解HTTP Session与Cookie)
- Cookie&Session理解与应用
- session与cookie的理解
- 深入理解cookie与session
- 深入理解 Session 与 Cookie
- 深入理解 Session 与 Cookie
- 深入理解Session与Cookie
- web javescript与cookie理解
- 用gunicorn+gevent启动Flask项目
- 【Leetcode】之Unique Paths II
- Jackson tips: using @JsonAnyGetter/@JsonAnySetter to create "dyna beans"
- 使用maven搭建Java Web的spring MVC项目
- arcgis 10.1 32位desktop在服务器上安装oracle客户端和服务器端,plsql连接不上问题解决
- Cookie技术分析与理解
- Junit单元测试注意事项
- Spring mvc 自定义拦截器【详解】
- Openstack+KVM+Ceph+Docker 集成云计算中
- c++第6次实验-项目2-数组合并
- 349. Intersection of Two Arrays [easy] (Python)
- Jenkis 打包 AS 项目
- android 发送短信的两种方式
- Android学习参考