博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTTP状态保持,cookie和session
阅读量:4025 次
发布时间:2019-05-24

本文共 682 字,大约阅读时间需要 2 分钟。

       首先我们要知道Http是无状态的,就是连接时数据进行交互,关闭后服务端课客户端彼此不认识彼此,或者说永久性失忆,那么为什么http是无状态的呢?因为浏览器和服务器之间用的是socket通信,也就是TCP通信,一旦关闭浏览器,四次挥手之后,服务器将请求给的数据发送给了浏览器之后,会关闭当前的socket,而且服务器也在会处理页面之后销毁页面对象。

什么是状态保持:

       状态保持就是用户请求时,浏览器.服务器知道这个用户之前做过什么,会把用户的浏览状态保持下来.。比如 :你访问了京东并登录,当你点击某个链接,进入新的页面,他没有让你重新输入账号密码,新页面是显示的已登录状态,这就是所谓的状态保持。

如何实现状态保持:

这就涉及浏览器跟服务器之间保持状态的方法,也就是cookie。还有另外一种实现状态保持的是session。

一、cookie

     1、在用户登录之后,浏览器返回响应的时候会在响应中添加上cookie

     2、浏览器接收到cookie之后会自动保存
     3、当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookie
     4、服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录

二、session

       cookie保存在浏览器,每次访问网站都会将本地保存cookies值(一般用来存储用户个人信息)发送到网站,不安全。这个时候也就产生了session。Seesion虽然依赖cookie存在,但它保存在服务器上,比cookie更安全。而且session存的数字不会转成字符串,而cookie存值会转为字符串。

转载地址:http://mstbi.baihongyu.com/

你可能感兴趣的文章
Memcache的使用和协议分析详解
查看>>
Laravel 学习笔记 —— 神奇的服务容器
查看>>
条件注释判断浏览器<!--[if !IE]><!--[if IE]><!--[if lt IE 6]><!--[if gte IE 6]>
查看>>
dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算
查看>>
laravel中的自定义函数的放置规范
查看>>
laravel中创建帮助函数文件
查看>>
PHP那点小事--三元运算符
查看>>
解决国内NPM安装依赖速度慢问题
查看>>
Brackets安装及常用插件安装
查看>>
在CentOS 7系统上搭建LNMP 环境
查看>>
Centos 7(Linux)环境下安装PHP(编译添加)相应动态扩展模块so(以openssl.so为例)
查看>>
fastcgi_param 详解
查看>>
Nginx配置文件(nginx.conf)配置详解
查看>>
nginx的location配置详解
查看>>
Nginx配置多个项目使用同一端口号的办法
查看>>
Linux下用户组、文件权限详解
查看>>
GitHub与Git指令入门
查看>>
Laravel如何引用第三方(自定义)库
查看>>
Windows 7 下安装sqlite数据库
查看>>
sqlite中一些常用的命令及解释
查看>>