localStorage和cookie操作

localStorage和cookie操作代码:

cookie: {
    isSupportCookie: function() {
        return navigator.cookieEnabled;
    },
    //添加cookie
    add: function(name, value, expires) {
        var storage = window.localStorage;
        if(storage) {
            storage.removeItem(name);
            storage.setItem(name, value);
        } else {
            var str = name + '=' + escape(value);
            if(expires > 0) { //为0时不设定过期时间,浏览器关闭时cookie自动消失
                var date = new Date();
                var ms = expires * 3600 * 1000;
                date.setTime(date.getTime() + ms);
                str += "; expires=" + date.toGMTString();
            }
            document.cookie = str;
        }
        // console.log("添加cookie【" + name + "】成功");
    },
    get: function(name) { //获取指定名称的cookie的值
            try {
                window.localStorage;
            } catch(e) {
                var str = '<img src="./dist/resources/img/tip.jpg"/>'
                var tipDialog = dialog({
                    skin: '_scheduled',
                    title: '提示',
                    content: str,
                    width: 590,
                    button: []
                });
                tipDialog.showModal();
            }
            var storage = window.localStorage;
            if(storage) {
                return storage.getItem(name);
            } else {
                var arrStr = document.cookie.split('; ');
                for(var i = 0; i < arrStr.length; i++) {
                    var temp = arrStr[i].split('=');
                    if(temp[0] == name) {
                        return unescape(temp[1]);
                    }
                }
            }
        }

        ,
    remove: function(name) { //为了删除指定名称的cookie 可以将其过期时间设定为一个过去的时间
        var storage = window.localStorage;

        function del(param) {
            if(storage) {
                storage.removeItem(param);
            } else {
                var date = new Date();
                date.setTime(date.getTime() - 10000);
                document.cookie = param + '=a; expires=' + date.toGMTString();
            }
        }

        if(typeof name === 'object') {
            for(var i = o; i < name.length; i++) {
                del(name[i]);
            }
        } else {
            del(name);
        }
    },
    read: function() { //读取所有保存的cookie字符串
        var str = document.cookie;
        if(str == '') {
            str = "没有保存任何cookie!";
        }
        // console.log(str);
    }
}

 

转载于:https://www.cnblogs.com/laq627/p/6781374.html

localstoragecookie都是用来在浏览器端保存数据的技术。但是它们在保存密码方面有一些区别。 首先是localstorage,它是HTML5新增的Web Storage API之一。可以将数据以键值对的形式存储在浏览器中,并且该数据不会随着网页的关闭而消失。因此,localstorage可以用来保存长期登录的密码,以便下次用户打开网页时可以自动填充密码。然而,localstorage存储的数据是明文形式,只要有人能够访问到用户的设备,就可以轻松获取到存储在localstorage中的密码信息。 而cookie是浏览器常用的一种技术,用于在浏览器和服务器之间传递数据。在保存密码方面,cookie可以设置一个标记来表示用户的登录状态,使得用户可以在一段时间内免登录。然而,cookie也存在一些安全问题。首先,cookie中的数据是明文存储的,可以被他人窃取,因此不能将密码明文存储在cookie中,而是应该将密码进行哈希散列等操作后再存储。其次,cookie有过期时间,如果不合理设置,可能会导致用户的登录状态过长,增加了安全风险。 综上所述,无论是使用localstorage还是cookie保存密码,都存在一定的安全风险。为了提升密码的安全性,应该对密码进行哈希散列等操作后再进行存储,并定期更新密码或设置密码的有效期限,以保护用户的账户安全。此外,还应该使用其他更安全的身份验证方式,如双因素认证等,来加强用户账户的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值