NoHttp
Http Cookie和缓存
Http协议之 Http Cookie
Session、Cookie
Session是什么?
- Session是对服务端来说,本质是cookie
- 是临时Cookie,当浏览器关闭时或者APP关闭时,就被客户端清理
Session和Cookie的区别:
- Session和Cookie在返回给客户端时候都在Response Header的SetCookie中,只能通过它有没有Express(过期时间、有效期)字段来判断,但是不是所有的没有Express的Cookie就是Session
- 对于客户端来说,Session和Cookie都是Cookie,因此说客户端把Session和Cookie都当成Cookie来处理
- 对于有Express的Cookie就是普通的Cookie,没有Express的Cookie可能是Session或者临时Cookie,其实Session就是临时Cookie
- Cookie的字段都有:domain(域名)、path()、name、value、express、comment、commenturl、httponly、
Cookie是什么?
- Cookie是一段服务器写到客户端的内容,而且客户端请求服务端的时候带用键值对的形式添加到请求头Cookie中,如果有多个Cookie,用“;”(英文符号一个空格分割):比如
- jession=46546364949mlk5sfafa69; username=_54dfasf4
临时Cookie?
- 临时cookie和session一样,客户端关闭时就会被清除
带有express的Cookie
- 如果没有过期就会被客户端一直保存,如果过期了会被清除
为什么用到Cookie?
- 一般用来保存用户登录信息和缓存
Http协议之缓存
Http缓存掩饰
响应的时候
- Http缓存是从信息来判断的
- 当客户端支持缓存的时候,客户端请求完服务器时,服务器端会在ResponseHeader中添加一个头
Last-Modified
,这个头意味着服务端最后一次修改这个接口的数据的时间
请求的时候
- 当客户端请求过一次接口时,如果这个接口包含了
Last-Modified
的时候,客户端会把这个接口返回的数据缓存起来,下一次请求的时候,会在请求头中添加一个If-Modified-Since
的头,它的值是服务端上次响应时Last-Modified
的值,含义是告诉服务器上次修改文档是什么时候,和它的数据修改时间作对比,如果这个时间比数据修改时间大或者相等,那么就返回响应码304,让客户端使用缓存,以此来省流量和减短请求时间,这个时间比修改数据的时间小,则重新返回数据