查看: 20|回覆: 0

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

[複製鏈接]

0

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2012-3-13
發表於 2019-11-21 10:28:00 | 顯示全部樓層 |閲讀模式

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";
    }

 



来源:https://www.cnblogs.com/cuiqq/p/11903992.html
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部