NoHttp

NoHttp

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,让客户端使用缓存,以此来省流量和减短请求时间,这个时间比修改数据的时间小,则重新返回数据

你可能感兴趣的:(android,HTTP)