热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cookie的使用以及cookie的跨域名获取

cookie存放容量4k左右,可设置过期时间。1、cookie的封装使用设置cookiesfunctionsetCookie(name,value){

COOKIE存放容量4k左右,可设置过期时间。

1、COOKIE的封装使用

 //设置COOKIEs
    function setCOOKIE(name, value) {
        var Days = 30;
        var exp = new Date();
        exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
        document.COOKIE = name + "=" + value + ";expires=" + exp.toGMTString()";
    }

    //读取COOKIEs
    function getCOOKIE(name) {
        var arr,
            reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
        if (arr = document.COOKIE.match(reg)) {
            return arr[2];
        }
        else {
            return null;
        }

    }

    //删除COOKIEs
    function delCOOKIE(name) {
        var exp = new Date();
        exp.setTime(exp.getTime() - 1);
        var cval = getCOOKIE(name);
        if (cval != null)
            document.COOKIE = name + "=" + cval + ";expires=" + exp.toGMTString();
    }
//使用举例
setCOOKIE("REG_GUID","This is set COOKIE!");
getCOOKIE("REG_GUID");

2、COOKIE的跨域名使用

简单说下域名,www.baidu.com是个域名,且是个二级域名(它对应的一级域名为baidu.com)。www.baidu.com与blog.baidu.com(对应的一级域名也是baidu.com)是不同的域名,他们之间相互请求COOKIE是请求不到的。如果想要跨域请求COOKIE,需要将这两个设置成相同域名。即在存储COOKIE时使用domain设置域名即可,如下:

//设置COOKIE,使之能跨域获取
    function setCOOKIE(name, value) {
        var Days = 30;
        var exp = new Date();
        exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
        document.COOKIE = name + "=" + value + ";expires=" + exp.toGMTString() + "; path=/" + ";domain=.baidu.com";
    }

 


推荐阅读
author-avatar
936383130_54f13e
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有