美文网首页
关于cookie

关于cookie

作者: Jerry_FD | 来源:发表于2016-06-12 19:17 被阅读37次

关于cookie

cookie

  • cookie的定义

    cookie是前端开发中的一个重要概念。cookie翻译为“甜饼干”,由W3C提出被各大浏览器支持的一种解决HTTP请求无状态的方案。
    http的无状态是指客服端和服务端的数据交换完毕,连接一旦中断,再次建立连接时又是一个全新的连接,之前的连接的数据会被彻底“遗忘”,这就使服务端无法弄明白这次的连接是由谁发起的。

  • cookie的使用场景

当用户浏览网站需要对用户身份进行判断,来进行不同响应时,可以利用cookie。第一次发送请求判断校验了用户身份后,把用户身份存放在cookie中,当下次发送请求时服务端就可从cookie中获取之前存放在cookie中信息,而不用再次经过复杂校验。
或是用来保存一些用户在网页上自定义的一些设置,在页面跳转、页面关闭后依然能够记录这些信息。针对不同用户的不同操作做出相应的响应、

  • cookie的前端封装代码
var cookie = {
       set:function(key,val,time){//设置cookie方法
           var date = new Date(); //获取当前时间
           date.setDate(date.getDate() + time)//设置cookie过期时间
           document.cookie = key + "=" + val +
            ((time==null) ? '' : ';expires='+time.toGMTString())
       },
       get:function(key){//获取cookie方法
           /*获取cookie参数*/
           //删除cookie中的所有空格;
           var pureCookie = document.cookie.replace(/\s+/g,"");
           //以分号分割cookie存放在arrCookie中
           var arrCookie = pureCookie.split(";");
           //声明要输出的值
           var resultVal;  
   
           //遍历arrCookie找出与输入相同的键值对,输出相应值
           arrCookie.map((item,index) => {
               var result = item.split("=");
               if(key == result[0]){
                   resultVal = result[1];
                   break;
               }
           })
   
           return resultVal;
       }
} 

代码中封装了一个cookie对象,它包含2个方法set和get。

set可以设置cookie,其中包含3个参数,cookie的属性名,cookie的值,cookie的过期时间

get可以取出与输入属性名相同的cookie值

  • cookie的属性

  • max-age(expires):指定cookie的有效期,单位是秒,表示cookie存在的秒数

    1. max-age为负:表示此cookie只在本窗口和子窗口有效
    2. max-age为0:表示删除此cookie
  • domain:可以访问该cookie的域名。如果设置为“.google.com”,则所有以“google.com”结尾的域名都可以访问该Cookie。注意第一个字符必须为“.”

  • path:可以访问该cookie的域名。如果设置为“/”,则该域名下的所有路径都可以访问该Cookie。注意最后一个字符必须为“/”

  • 查看cookie的方法:


    help.jpg
  • cookie存在的问题

  • 存储大小只有4kb

  • 每次发送http请求时cookie都会一并发送,浪费带宽

  • HTML5的 localStorage和sessionStorage有了更好的解决办法

相关文章

  • 关于cookie

    关于cookie cookie cookie的定义cookie是前端开发中的一个重要概念。cookie翻译为“甜饼...

  • 爬虫笔记(一) - 各种Request请求的对比(Scrapy

    关于Cookie的分析我在爬虫笔记(六) - 关于 Cookie 的分析(Postman Request Sele...

  • 关于认证和鉴权的思考

    一、关于Cookie和Session的简单介绍 1.Session和Cookie的区别 ①.Cookie是把用户的...

  • cookie,localStorage,session的区别

    cookie cookie,就是浏览器缓存。做的是网站的身份识别,配合session使用,关于cookie的特点,...

  • Python爬虫教程:使用cookie爬取登录后的页面(2)

    自动使用cookie的方法,告别手动拷贝cookie http模块包含一些关于cookie的模块,通过他们我们可以...

  • 关于Cookie

    前言 Cookie 是服务器保存在浏览器的一小段文本信息,每个 Cookie 的大小一般不能超过4KB。浏览器每次...

  • 关于Cookie

    我们设想,在一个购物场景,客户端向服务器发送购买某件商品的请求,服务器跳转到下一个页面后,它是如何知道你要购买的是...

  • 关于Cookie

    最近遇到一个处理cookie的问题,事实上我对cookie有种说不清道不明的感觉(其实就是我不懂/(ㄒoㄒ)/~~...

  • 关于cookie

    什么事cookies: cookie是浏览器存储在用户 客户端上的一小段文本文件 (不超过4k,单域名cookie...

  • 常见的本地存储方式之Cookie

    关于cookie,前端必备HTTP技能之cookie技术详解写的非常详实,本文拟从实验的角度解读各种cookie的...

网友评论

      本文标题:关于cookie

      本文链接:https://www.haomeiwen.com/subject/pcaedttx.html