浏览器存储:cookie

Cookie是什么:cookie是指存储在用户本地终端上的数据,同时它是与具体的web页面或者站点相关的。Cookie数据会自动在web浏览器和web服务器之间传输,也就是说HTTP请求发送时,会把保存在该请求域名下的所有cookie值发送给web服务器,因此服务器端脚本是可以读、写存储在客户端的cookie的操作。

cookie的有效期:cookie默认情况下的有效期是很短暂的,一旦用户关闭浏览器,cookie保存的数据就会丢失。如果想要延长cookie的有效期,可以通过设置HTTP头信息中的cache-control属性的max-age值,或者修改HTTP头信息中的expires属性的值来延长有效期。

cookie的作用域:它是通过文档源和文档路径来确定的。该作用域通过cookie的path和domain属性也是可配置的。默认情况下,cookie和创建它的web页面有关,并对该页面以及和该页面同目录或者子目录的其他页面可见。有时候,你可能希望让整个网站都能够使用cookie的值,而不管是哪个页面创建它。要满足这样的需求可以设置cookie的路径(设置cookie的path属性。例如,如果http://www.csh.com/cat/index.html页面创建了一个cookie,并且利用path属性将该路径设置成”/”,那么该cookie对任何http://www.csh.com这台web服务器上的页面都是可见的)。cookie的作用域默认由文档源限制。但是,有的大型网站想要子域之间能够互相共享cookie(例如,www.csh.com域名的的服务器想要读取mmm.csh.com域下设置的cookie值,这就需要通过设置cookie的domain属性来达到目的)。

cookie的数目和大小的限制:每个web服务器(域名)保存的cookie数不能超过50个,每个cookie保存的数据不能超过4KB,如果超过了4KB,服务器会处理不了。

//添加新的cookie
function addCookie(objName,objValue,objHours){
    var str = objName + "=" + escape(objValue);

       //为0时不设定过期时间,浏览器关闭时cookie自动消失
        if(objHours > 0){
        var date = new Date();
        var ms = objHours*3600*1000;
        date.setTime(date.getTime() + ms);
        str += "; expires=" + date.toString();
    }
    document.cookie = str;
};
        
//获取指定名称的cookie的值
function getCookie(objName){
    var arrStr = document.cookie.split("; ");
    for(var i = 0;i < arrStr.length;i ++){
        var temp = arrStr[i].split("=");
        if(temp[0] == objName) return unescape(temp[1]);
    }
};
//为了删除指定名称的cookie,可以将其过期时间设定为一个过去的时间
function delCookie(name){
    var date = new Date();
    date.setTime(date.getTime() - 10000);
    document.cookie = name + "=a; expires=" + date.toString();
};

浏览器存储:cookie

时间: 2024-10-11 07:47:28

浏览器存储:cookie的相关文章

深入了解浏览器存储:对比Cookie、LocalStorage、sessionStorage与IndexedDB

摘要: 对比Cookie.LocalStorage.sessionStorage与IndexedDB 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 随着移动网络的发展与演化,我们手机上现在除了有原生 App,还能跑"WebApp"--它即开即用,用完即走.一个优秀的 WebApp 甚至可以拥有和原生 App 媲美的功能和体验.WebApp 优异的性能表现,有一部分原因要归功于浏览器存储技术的提升.cookie存储数据的功能已经很难满足开发所需,逐渐被WebSto

浅谈浏览器存储(cookie、localStorage、sessionStorage)

今天我们从前端的角度了解一下浏览器存储,我们常见且常用的存储方式主要由两种:cookie.webStorage(localStorage和sessionStorage).下面我们来一一认识它们. Cookie基于HTTP规范,用来识别用户. Cookie是服务器发送到浏览器的一小段数据,会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上. Cookie诞生之初的作用就是解决HTTP的无状态请求,用来记录一些用户相关的一些状态. 会话状态管理(如用户登录状态.购物车.游戏分数或其它需要记

深入了解浏览器存储:对比Cookie、LocalStorage、sessionStorage与IndexedDB(转)

前言 随着移动网络的发展与演化,我们手机上现在除了有原生 App,还能跑“WebApp”——它即开即用,用完即走.一个优秀的 WebApp 甚至可以拥有和原生 App 媲美的功能和体验.WebApp 优异的性能表现,有一部分原因要归功于浏览器存储技术的提升.cookie存储数据的功能已经很难满足开发所需,逐渐被WebStorage.IndexedDB所取代,本文将介绍这几种存储方式的差异和优缺点. 想阅读更多优质文章请猛戳GitHub博客 一.Cookie 1. Cookie的来源 Cookie

Android本地化存储Cookie(针对HttpClient)

因为最近有人问我怎么保存HttpClient的Cookie, 所以这里写下, 顺便记录总结吧. 当然, 有Android网络编程经历的童鞋一看就懂喇~ 就不多说了, 直接上代码: /** * 本地存储Cookie * @param response */ private void saveCookies(HttpResponse response) { SharedPreferences preferences = getSharedPreferences("cookies", MOD

浏览器存储及使用

转载自  http://geek.csdn.net/news/detail/98519 伴随着WEB的发展,浏览器的存储方式及技术不断的发生更改,从刚开始的Cookie,到 localStorage,sessionStorage,再到IndexedDB,再到现在的Web SQL,作为一名合格的前端开发,当然需要对这些技术了如指掌并熟练掌握,本文将比较全面的介绍常见的浏览器存储以及其使用. 1. Cookie Cookie是一个用户通过浏览器浏览网站产出的信息的票根,Cookies通常被用来标示一

客户端存储cookie

1.cookie是一种早期的客户端存储机制,起初是针对服务器端脚本的设计使用的. 尽管在客户端提供了非常繁琐的api 来操作cookie,但他们难用至极,而且只能 存储少量的文本数据,任何以cookie形式存储的数据无论服务端是否需要,每一次http请求 都会把这些数据传输到服务端.cookie目前任然被客户端程序员大量使用的一个重要原因是: 所有新旧浏览器都支持它.但是,随着Web Storage 的普及,cookie最终会回到最初的状态: 作为一种被服务端脚本使用的客户端存储机制. 2.co

web浏览器存储的不同方式:

效果图:     浏览器存储的不同方式: (1)生命期为只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭. 存放数据大小为4K左右 .有个数限制(各浏览器不同),一般不能超过20个.与服务器端通信:每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题. (2)sessionStorage仅在当前会话下有效,关闭页面或浏览器后被清除.存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信.源生接口可以接受,亦可再次封装来对Obje

六、浏览器存储

多种浏览器存储方式并存,如何选择? Cookie 特点: 因为HTTP请求无状态,所以需要cookie去维持客户端状态 过期时间 expire cookie的生成方式(1. http response header中的set-cookie,  2. js中可以通过document.cookie可以读写cookie) 仅仅作为浏览器存储(大小4KB左右,能力被localstorage替代) Cookie(是一个域名维度下的概念,只要是这个域名下的所有请求都会携带cookie,但是,是不是这个域名下

性能分析-浏览器存储

前端性能分析 浏览器存储 浏览器是由多种存储方式的,如何选择他们呢? cookie 因为HTTP请求无状态,所以需要cookie去维持客户端状态 过期时间 expire cookie的生成方式 http response header中的set-cookie js中可以通过document.cookie可以读写cookie 仅仅作为浏览器存储(大小4KB左右,能力被localstorage替代) cookie中在相关域名下面 -- cdn的流量损耗 httponly localstorage =