会话(session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的跟踪技术是Cookie和Session。Cookie通过咋客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。
Cookie机制
在程序中,会话跟踪是很重要的事情。理论上,一个用户的所有请求操作都应该属于同一个会话。 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话。 Cookie就是这样一种机制。
什么是cookie
由W3C组织提出,相当于给客户端们办法一个通行证,么人一个,无论谁访问都必须携带自己的通行证。这样服务器就能从通行证上确认客户身份了。这就是cookie的工作原理。 Cookie实际上是一小段文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response想客户端办法一个Cookie。客户端会吧Cookie保存起来。当浏览器在请求该网站时,浏览器把请求的地址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。 检查Cookie方法,在Console地址输入:: JavaScript:alert(document.cookie)
Cookie需要浏览器的支持。如果Cookie北京用了,Cookie功能就会失效。不同的浏览器保存Cookie的方式不同。
Cookie具有不可跨域名性。 Unicode编码:保存中文。 BASE64编码:保存二进制图片。 #####cookie常用属性 |属性名|描述| |--------|--------| |String name|名称,一旦创建,名称不可更改| |Object value|值, 如果是Unicode字符,需要为字符编码;如果是二进制数据,需要使用BASE64编码| |int maxAge|失效时间,秒。正数:maxAge之后失效;负数:临时Cookie,关闭浏览器即失效,不保存;0:删除。默认-1| |boolean secure|该cookie是否仅被使用安全协议传输。| |String path|使用路径,最后一个字符必须为 ' / ' | |String domain|可访问域名,第一个字符必须 ' . '| |String comment|用处说明| |int version|cookie使用的版本号 0,1|