• session和cookie的区别


    • COOKIE

    cookie是采用保持在客户端的保持状态,正统的cookie是扩展HTTP协议来实现的,在HTTP的报文头中设置cookie就可以提醒客户端来生成相应的cookie,这样做是为了解决HTTP是无状态的,用cookie来保存两次之间的状态,从而记录用户的状态。当然cookie也是可以采用浏览器、JS等设置禁用的。cookie主要包括名字、值、过期时间、修改时间。每一次响应请求时,都会与本地cookie的修改时间做比较,如果晚于上次修改时间,就修改,否则不变化。cookie的过期时间是非累加的,有别于seesion。

    如果不设置过期时间,表示浏览器关闭,cookie就取消,这样的cookie是会话cookie,这种cookie是存储在内存中的,不是硬盘上。对于存储在硬盘上的cookie,浏览器窗口之间是可以共享的;对于存储在内存中的cookie,浏览器窗口之间是不能共享的。

    • session

    session是采用保持在服务器端的,可以使用一个sessionid来保存不同用户的session值,是一种类似于散列表(散列表)的结构。服务器端接受客户端请求,先检查客户端请求里是否已经有了seesionid,已有就继续使用,否则创建新的。sessionid是可以采用cookie来存储的,使用cookie存储sessionid。但是cookie是可以被设置禁用的,所以还需要别的方式来保证这样的交互。一种方式是URL重写的技术,就是将sessionid直接写到url的后面,另一种是隐藏表单的方式,就是添加一个隐藏字段。浏览器一般是采用会话cookie实现的,所以浏览器关闭了,sessionid就消失了。

    cookie是保存在客户端的,而session又是通过cookie实现的

     
  • 相关阅读:
    android viewpager嵌套使用photoview异常问题
    android mvp设计模式
    android webview处理h5打开本地文件浏览器的功能
    使用python进行新浪微博粉丝爬虫
    android之ViewPager修改滑动速度
    我眼中的“阿里月饼事件”
    奄奄一息雏鸟
    RPC(远程过程调用)的应用
    对于开源菜谱的思考
    我跟360上网导航的过招
  • 原文地址:https://www.cnblogs.com/lxq0309/p/3641894.html
Copyright © 2020-2023  润新知