php----http协议 Cookie
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php----http协议 Cookie相关的知识,希望对你有一定的参考价值。
Cookie 总是保存在客户端,按保存位置分为:内存cookie和硬盘cookie。
1.内存cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,存在时间短。
2.硬盘cookie保存在硬盘里,有一个过期时间,除非用户手工清理或到了过期时间,不然cookie不会删除。存在时间长。
从时间上分,cookie可以分为:非持久cookie和持久cookie
Cookie的属性:
Domain:域,表示当前cookie所属于域或子域
对于服务器返回的set-cookie中,如果没有指定Domain,那么其Domain的值是默认为当前所提交的http的请求所对应的主域名。
Path:cookie路径
Expire time/Max-age: 表示cookie的有效期。
如果服务器返回的cookie,没有指定其expire time,那么表面当前cookie的有效期就是当前的session。对应的当该页面关闭时,此cookie就被删除了。
Secure:只能用https传输。用于传输包含认证信息的cookie
Httponly:表示此cookie必须用于http或https传输。
Cookie的缺陷:
(1)cookie会被附加在每个HTTP请求中,所以无形中增加了流量。
(2)由于在HTTP请求中的cookie是明文传递的,所以安全性成问题。(除非用HTTPS)
(3)Cookie的大小限制在4KB左右。对于复杂的存储需求来说是不够用的。
Cookie的基本使用(php):
设置cookie变量:setcookie(名字,值)
取cookie变量:$_COOKIE[‘名字‘]
Cookie的高级使用:
1.cookie数据只能是字符串数据
2.setcookie,可以完成增删改,不存在则增加,存在则修改!删可以将值设为空
3.cookie变量的失效期
4.cookie存在有效路径的概念、
5.cookie是严格区分域名的
6.Set-cookie:从服务器端发送给客户端,就是对应的set-cookie
当服务器通过Set-cookie第一次发送给客户端时,客户端接受不到该cookie,因为客户端没有再次请求服务器,而set-cookie是通过Response发送给客户端的,只有再次request请求时才能获取到该cookie。
本文出自 “Joxiong” 博客,请务必保留此出处http://joxiong.blog.51cto.com/9068286/1740339
以上是关于php----http协议 Cookie的主要内容,如果未能解决你的问题,请参考以下文章