zoukankan      html  css  js  c++  java
  • 解读cookie,localstorage,sessionstorage用法与区别1(解读cookie)

    cookie

    cookie概念

    cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。

    为什么提出cookie?

    由于HTTP是一种无状态的协议,服务器单从网络连接上无从知道客户身份。怎么办呢?就给客户端们颁发一个通行证吧,每人一个,无论谁访问都必须携带自己通行证。这样服务器就能从通行证上确认客户身份了。这就是Cookie的工作原理

    我的理解

    cookie为一小段文本,如果服务器端页面,需要记录用户的信息状态,就使用response向客户端浏览器颁发一个Cookie(服务器通过代码提取信息,然后生成cookie保存到用户浏览器文件夹内)附带cookie对应的网址,保存。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态提取用户信息。服务器还可以根据需要修改Cookie的内容。

    有想知道位置的朋友去C:UsersAdministratorAppDataRoaming  不完整

    下边是不同浏览器的后续地址

    IE:C:UsersAdministratorAppDataRoamingMicrosoftWindowsTemplates

    Firefox:C:/Documents and Settings/你的用户名/Application Data/Mozilla/Firefox/Profiles  在这个目录下里有一个类似于这样的随机目录 b8ypabix.default 。 b8ypabix.default里面找到类似于cookies.sqlite等这样的文件就是cookie文件,但是般普通编辑器是无法正常看到里面的内容的。

    Chrome:C:UsersAdministratorAppDataLocalGoogleChromeUser DataDefault;

    cookie特点

    1.不同的浏览器存放的cookie位置不一样,也是不能通用的
    2.cookie的存储是以域名形式进行区分的
    3.cookie的数据可以设置名字的
    4.一个域名下存放的cookie的个数是有限制的,不同的浏览器存放的个数不一样
    5.每个cookie存放的内容大小也是有限制的,不同的浏览器存放大小不一样

    cookie的实际应用

    我们通过document.cookie来获取当前网站下的cookie的时候,得到的字符串形式的值,他包含了当前网站下所有的cookie。他会把所有的cookie通过一个分号+空格的形式串联起来

    如果我们想长时间存放一个cookie。需要在设置这个cookie的时候同时给他设置一个过期的时间
    cookie默认是临时存储的,当浏览器关闭进程的时候自动销毁

    存放:document.cookie = '名字=值';会立即销毁

       正确:document.cookie = '名称=值;expires=' + 字符串格式的时间;

          oDate.setDate( oDate.getDate() + 5 );

          document.cookie = 'username='+ encodeURI('leo 你好') +';expires=' + oDate.toGMTString();因为可能存在/n无法识别问题所以进行1encodeURI编码,读取是进行解码

    读取时也需要解码:alert(decodeURI(document.cookie));

    如果在chrome上是空白请不要担心 ,chorme需要在服务器环境下才能响应呢

    下边是对cookie增加,删除,获取得封装

    function setCookie(key, value, t) {
      var oDate = new Date();
      oDate.setDate( oDate.getDate() + t );
      document.cookie = key + '=' + value + ';expires=' + oDate.toGMTString();
    }

    function getCookie(key) {
      var arr1 = document.cookie.split('; ');
      for (var i=0; i<arr1.length; i++) {
        var arr2 = arr1[i].split('=');
        if ( arr2[0] == key ) {
          return decodeURI(arr2[1]);
        }
      }
    }

    function removeCookie(key) {
      setCookie(key, '', -1);
    }

  • 相关阅读:
    第三天 moyax
    mkfs.ext3 option
    write file to stroage trigger kernel warning
    download fomat install rootfs script
    custom usb-seriel udev relus for compatible usb-seriel devices using kermit
    Wifi Troughput Test using iperf
    learning uboot switch to standby system using button
    learning uboot support web http function in qca4531 cpu
    learngin uboot design parameter recovery mechanism
    learning uboot auto switch to stanbdy system in qca4531 cpu
  • 原文地址:https://www.cnblogs.com/LiSuSpAu/p/5722141.html
Copyright © 2011-2022 走看看