zoukankan      html  css  js  c++  java
  • HTTP--cookie和session

      http是无状态协议,它不对之前发生过的请求和响应进行管理。也就是说,无法根据之前的状态进行本次的请求处理,哪怕你刚刚才访问过这个服务器,可当你下一秒再访问时,服务器已经忘了你是谁了。假设要求登陆认证的web页面本身无法进行状态的管理(不记录已登陆的状态),那么每次跳转页面就要再次登陆,或者要在每次请求报文中附加参数来管理登录状态。

      于是,引入了cookie技术。Cookie机制会根据服务器段发送的响应报文中的一个Set-Cookie的首部字段信息通知客户端保存cookie。当下一次客户端再向服务器发送请求时,客户端会自动在请求报文中加入一个cookie首部字段后发送,首部字段值为键值对的形式。

    一段通俗的解释过程:

    服务器为了区别用户,给每个首次访问网站的用户(请求头里没有cookie或者cookie里没有SessionID,SessionID即为cookie首部中的值)设置一个SessionID,同时在服务器端保存一个带有SessionID的文件,来保存用户的一些信息。

    因此,两者的区别在于:

    1.session是一种机制,cookie只是为了实现这个机制的一部分。

    2.cookie存储在客户端,也就是浏览器;SessionID以及其他的一些用户信息存储在服务器。

    3.浏览器在访问网页时会把该服务器给你的SessionID放到cookie头中去请求,这是所有浏览器最基本的功能。

    图解HTTP中的一个例子:

  • 相关阅读:
    第二部分 设计类型:第8章 方法
    centos7 网卡重命名
    centos7修改主机名
    修改umask值
    mysql表字段属性
    mysql基础操作
    mysql错误代码ERROR 1045 (转载)
    sed高级用法
    shell拷贝原文件到目标对应文件夹
    函数(位置传参)
  • 原文地址:https://www.cnblogs.com/wxylyw/p/9184599.html
Copyright © 2011-2022 走看看