document.cookie;
不断通过设置document.cookie=xxx;可以给cookie不断写入新的值,而不是重新赋值,如果键已经存在原来的cookie中,那么将会更新它的值,如果设置的时间比当前时间小,浏览器就会删除该键对应的信息。这就实现了对cookie的增删改。查询的话就解析cookie对应的字符串就行。不设置过期时间的cookie默认是会话cookie,浏览器关闭的时候就会被清除。
第三方cookie的问题:某些正常的网站A会允许插入第三方广告商的资源,比如通过一个iframe嵌入,然后浏览器会请求第三方服务器的资源,比如一个php文件,这样第三方广告商就可以设置cookie保存在用户的浏览器里,然后如果用户访问的网站B也引用了该广告商的资源,那么这时候浏览器就会把该广告商之前设置的cookie发送给广告商的服务器,同理,这时候广告商还可以继续设置cookie,通过这种方式,可以跟踪用户的行为。通过分析用户行为,广告商可以推送相关的广告。
www.cyb.com域名下的页面haha.php
<?php
setCookie("hello","world");
?>
localhost域名下的页面A
<!DOCTYPE html>
<html>
<head>
</head>
<body >
<iframe src="http://www.cyb.com/haha.php"></iframe>
</body>
</html>
www.zym.com域名下的页面B
<!DOCTYPE html>
<html>
<head>
</head>
<body >
<iframe src="http://www.cyb.com/haha.php"></iframe>
</body>
</html>
我们访问localhost的页面A的时候,会加载cyb域名下的php文件,php文件设置了cookie,这时候浏览器就会保存该cookie,然后我们继续访问zym域名下的页面B,这时候该页面也会加载cyb域名下的php文件,并且会携带前面设置的cookie。这样可以实现跟踪用户和进行分析用户行为等。