zoukankan      html  css  js  c++  java
  • 重新认识之:cookie篇

    关于对cookie的认识,一直都是停留在 百度百科 或者一些别人写的帖子上,自己从未深入的理解,今天决定来好好探索

    1. Cookie是什么?

      Cookie 是由 Web 服务器保存在用户客户端上的小文本文件,它可以包含有关用户的信息。无论何时用户链接到服务器,Web 站点都可以访问 Cookie 信息。

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

      这里你可能会存在一个疑问:"无论何时用户链接到服务器,Web 站点都可以访问 Cookie 信息"该作何理解?暂且将这个问题放一放

    2.如何设置Cookie?

      1)客户端

    <script type="text/javascript">
        /**
         * name: 键
         * value: 值
         * expire: 过期时间(天)
         */
        function setCookie(name, value, expire) {
            var exdate = new Date();
            exdate.setDate(exdate.getDate()+expire);
            document.cookie = name + "=" + escape(value) + ((expire===undefined) ? "" : ";expires="+exdate.toGMTString())
        }
        setCookie('name', 'gaoxiong', 10);//设置有效期为10天,键为name,值为gaoxiong
    </script>

      2)服务端(以PHP为例)

    <?php
        # 语法: setcookie(name, value, expire, path, domain);
        setcookie('user', 'gaoxiong', time()+3600);
    ?>

    3.Cookie工作原理

      一般来说,Cookie通过HTTP Headers从服务器端返回到浏览器上

      以第2点为例,在grovefun.com/basic/index.php文件上设置该cookie:

      第一步:服务端设置的cookie会在响应头上体现出来

      
      第二步:浏览器将响应头中的cookie存在本地:

      

      当浏览器再次请求时就会在请求头上携带该站点下的所有Cookie,从而完成验证

        

      如何在服务端获取客户端的Cookie?在PHP中Cookie被保存在$_COOKIE数组中。

      

  • 相关阅读:
    cocos2d-x类型转换(CCstring int string char UTF-8互转)
    cocos2d-x 实心圆
    CCLabelTTF的多行显示(仅限中文)
    cocos2d-x 弹窗
    cocos2d-x 画线
    cocos2d-x 利用CCLabelTTF制作文字描边与阴影效果的实现方法
    cocos2d-x 背景色修改
    cocos2d-x 中文乱码问题
    HelloWorld.exe 中的 0x0f9265f6 (libcocos2d.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0x00000038 时发生访问冲突
    error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
  • 原文地址:https://www.cnblogs.com/noper/p/6618788.html
Copyright © 2011-2022 走看看