主题 : jeecms X前端cookie取值getTCookie方法bug
级别: 解元
UID: 116868
积分:369 加为好友
威望: 1 精华: 0
主题:29 回复:126
注册时间:2017-09-26
在线时长:0
1#   发表于:2021-03-11 16:14:18  IP:124.85.*.*
//获取cookie
    function getTCookie(cname) {
        var name = cname + "=";
        var ca = document.cookie.split(';');
        for(var i=0; i<ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1);
            if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
        }
        return "";
    }

此方法会导致获取数据错误的Bug。
复现方式:
如在cokie中已存储abc=123
此时再存储一个c=234
当使用c进行获取信息时,会获取到123
 

推荐修改方式:
function getTCookie(cname) {
        var name = cname + "=";
        var ca = document.cookie.split(';');
        for(var i=0; i<ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1);
            if (c.slice(0,name.length) == name) return c.substring(name.length, c.length);
        }
        return "";
    }
级别: 管理员
UID: 136355
积分:2689 加为好友
威望: 0 精华: 0
主题:0 回复:2042
注册时间:2020-11-03
在线时长:0
2#   发表于:2021-03-11 16:20:16  IP:111.201.*.*
回复第1楼
您好,您的建议这边收到了呢,已反馈技术查看
级别: 解元
UID: 116868
积分:369 加为好友
威望: 1 精华: 0
主题:29 回复:126
注册时间:2017-09-26
在线时长:0
3#   发表于:2021-03-11 16:25:17  IP:124.85.*.*
回复第2楼
级别: 管理员
UID: 136355
积分:2689 加为好友
威望: 0 精华: 0
主题:0 回复:2042
注册时间:2020-11-03
在线时长:0
4#   发表于:2021-03-11 16:26:09  IP:111.201.*.*
回复第3楼
1 共1页