赞
踩
cookie实际上就是一些信息,这些信息以文件的形式存储在客户端计算机上。当用户访问了某个网站,可以通过cookie向访问者电脑上存储数据。
cookie的主要作用是在浏览器中进行数据的存储,并与服务器互动。
比如:密码 cookie,访当问者首次登陆网站时,需要填写密码。密码可被存储于 cookie 中。当他们再次访问网站时,就会从 cookie 中取回密码。
cookie可以用来做广告的精准投放,将用户搜索的信息存储在本地,在别的网站做广告时,可以调用cookie,从而完成广告的精准投放。
//创建cookie
document.cookie="user=xiaoming";
document.cookie="age=30";
document.cookie="sex=man";
//获取cookie
console.log(document.cookie);//user=xiaoming; age=30; sex=man
//设置cookie的生存期
var date=new Date();
date.setHours(date.getHours() + (24 * 30)); //保存30天
document.cookie="user=xiaoming;expires="+date.toUTCString();
XSS攻击,全称跨站脚本攻击,是为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中,它的目的是盗取cookie数据 ,不过现在这种攻击方式基本都已经被屏蔽了。
举个例子:
当在输入框中写入 <script>alert(document.cookie)</script> 后,点击提交,页面会执行提交的 script 脚本,这样就可以获取到当前用户页面中存储的 cookie了。
XSS 实现有以下三点:
如何解决这些问题:
WebStorage 分为localStorage(本地存储)和sessionStorage(会话存储);
localStorage 和 sessionStorage的操作语法相同。
//创建localStorage localStorage.user="xiaoming"; localStorage["user"]="xiaoming"; localStorage.setItem("user","xiaoming"); //获取localStorage console.log(localStorage.user); console.log(localStorage["user"]); console.log(localStorage.getItem("user")); //删除localStorage delete localStorage.user; localStorage.removeItem("user"); //清除所有localStorage存储 localStorage.clear();
给 window 监听 storage 事件,可以用来不同页面间的通信,可以获取到 storage 现在的值和过去的值:
window.addEventListener("storage",storageHandler);
function storageHandler(e){
console.log(e);
// e.key 属性 e.newValue新值 e.oldValue过去的值
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。