发表于: 2017-11-07 22:38:09

1 760


今天完成的事情:

1.完成小课堂

2.学习cookie和session

明天计划的事情:

做完任务五步骤一(尽量)

遇到的问题:

没有,小课堂浪费了太多时间。

另外就是理解的问题,这个还是要看自己。

收获:

1.什么是cookie?

cookie是一小段文本信息,它记录了一个用户访问某个网站时的用户信息。

由于http是无状态的协议,所以浏览网站时, 如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个cookie(通行证).客户端浏览器会把cookie保存起来放在本地,当浏览器再请求该网站时,浏览器会先找有没有上次留下的cookie资料,如果有浏览器把请求的网址连同该cookie一同提交给服务器,服务器检查该cookie,以此来辨认用户状态,送出特定的网页内容。

2.cookie的内容及机制

主要包括:名字,值,过期时间,路径和域。

路径和域一起构成cookie的作用范围。

若不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口cookie就消失。这种生命期为浏览器会话期的cookie被称为会话cookie。

会话cookie一般不存储在硬盘上而是保存在内存里,当然这种行为并不是规范规定的.若设置了过期时间,浏览器会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。

存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而对于保存在内存里的cookie,不同的浏览器有不同的处理方式。

3.cookie属性

name:cookie的名字,一旦创建,名称不可更改。
value:cookie的值,如果值为Unicode字符,需要为字符编码。如果为二进制数据,则需要使用BASE64编码。
maxAge:cookie失效时间,单位秒。如果为正数,则该cookie在maxAge后失效。如果为负数,该cookie为临时cookie,关闭浏览器即失效,浏览器也不会以任何形式保存该cookie。如果为0,表示删除该cookie。默认为-1。
secure:该cookie是否仅被使用安全协议传输。
path:该cookie的使用路径。如果设置为"/sessionWeb/",则只有ContextPath为“/sessionWeb/”的程序可以访问该cookie。如果设置为“/”,则本域名下ContextPath都可以访问该cookie。

4.session

session机制是一种服务器端的机制,服务器使用一种类似散列表的结构来保存信息。

当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端里的请求里是否已包含了一个session标识--sessionID,如果已经包含一个sessionID,则说明以前已经为此客户端创建过session,服务器就按照sessionID把这个session检索出来使用(检索不到,可能会新建一个),如果客户端请求不包含sessionID,则为此客户端创建一个session并且声称一个与此session相关联的sessionID,sessionID的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个sessionID将被在本次响应中返回给客户端保存。

5.保存session的方式

(1)保存这个session id的方式可以采用cookie,这样在交互过程中浏览器可以自动按照规则把这个标识发送给服务器.一般这个cookie的名字都是类似于session id。

(2)但是cookie可以被认为的禁止,则必须由其他机制以便在cookie被禁止时仍然能够把session id传递回服务器。所以使用URL重写也是一种解决方法。



返回列表 返回列表
评论

    分享到