正确理解web交互中的cookie与session
cookie存储在客户端的纯文本文件
用户请求服务器脚本
脚本设置cookie内容 并 通过http-response发送cookie内容到客户端并保存在客户端本地
客户端再次发送http请求的时候会将本地的cookie内容添加到http请求头发送给服务器,服务器端脚本可以调用cookie内容
流程如图
cookie.php 脚本
客户端第一次访问(发送http请求)脚本设置cookie(setcookie)到客户端 并不会显示cookie内容
此时客户端的cookie文件已经生成
cookie内容
客户再次发送http请求的时候已经发送cookie过去了
这个是请求头信息里面的内容 cookie加在http请求头发送到服务器
服务器显示cookie内容到客户端的浏览器里面
session是存储在服务器的文件 cookie内容保存在客户端,存在被客户篡改的情况,session保存在客户端防止被用户篡改的情况
cookie是与用户的一个联系(一个用户一个cookie)、session只是将内容存储在服务器与用户的联系还是cookie
session建立的时候将发送一个cookie到客户端 cookie内容存储的是PHPSESSID(用以唯一识别用户),内容存储在temp文件夹下命名为 sess_PHPSESSID
session内容可以直接被脚本访问
session的代码
用户访问的时候可以直接显示session内容
此时在服务器上生成了对应的session文件
用户浏览器中的cookie里面存储的是对应的PHPSESSID
发送的cookie内容
注意到 cookie发送的正好是PHPSESSID 对应到服务器的session
- setcookie(name, value, expire, path, domain, secure);
- /*
- name cookie键名
- value cookie值
- expire cookie在客户端过期的时间
- path 服务器路径
- domain 域名
- secure 是否https通道
- --------------------------
- 当用户请求的uri符合
- secure + domian + path 这个路径
- cookie才会被发送给服务器
- */
setcookie(name, value, expire, path, domain, secure);
/*
name cookie键名
value cookie值
expire cookie在客户端过期的时间
path 服务器路径
domain 域名
secure 是否https通道
--------------------------
当用户请求的uri符合
secure + domian + path 这个路径
cookie才会被发送给服务器
*/
正确理解web交互中的cookie与session的更多相关文章
- web开发中的Cookie与Session技术
Cookie Cookie的由来 HTTP协议是无状态的,无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后 ...
- IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token
本文引用了简书作者“骑小猪看流星”技术文章“Cookie.Session.Token那点事儿”的部分内容,感谢原作者. 1.前言 众所周之,IM是个典型的快速数据流交换系统,当今主流IM系统(尤其移动 ...
- 第74节:Java中的Cookie和Session
第74节:第74节:Java中的Cookie和Session ServletContext: 什么是ServletContext,有什么用哦,怎么用呢? 启动服务器后,会给每个应用程序创建一个Serv ...
- {Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session
Django基础八之cookie和session 本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 ...
- Django---Django中使用COOKIE和SESSION
Django---Django中使用COOKIE和SESSION 一丶Cookie cookie的由来 # HTTP协议是无状态的. # 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请 ...
- Flask中使用cookie和session
Flask中使用cookie和session 设置cookie from flask import Flask,Response app = Flask(__name__) @app.route('/ ...
- django系列7.2--django中的cookie和session基本操作,浏览器登陆验证的不同实现
django中的cookie和session(02)–操作 一.Django中的cookie操作 ctrl + shift + del 是谷歌浏览器中清除页面缓存和cookie的快捷键 1.设置coo ...
- 理解会话中的Cookie和Session对象
会话可以简单理解为:用户打开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 在java语言中,Servlet程序是由WEB服务器调用,web服务器收到客 ...
- Java Web servlet中的cookie
点击submit后: 点击查看Cookies: 在C:\Documents and Settings\Administrator\Cookies目录下面会有一个 hongten@webproj ...
随机推荐
- 开源通用型渲染工具-SwiftShader--OpenGL的替代者
SwiftShader 是一款用于在 CPU 上进行高性能图形渲染的软件库.Google 已经在很多产品中使用该内容库,包括 Chrome.Android 开发工具和云服务.Swiftshader 从 ...
- Linux 中的网络数据包捕获
Linux 中的网络数据包捕获 Ashish Chaurasia, 工程师 简介: 本教程介绍了捕获和操纵数据包的不同机制.安全应用程序,如 VPN.防火墙和嗅探器,以及网络应用程序,如路由程序,都依 ...
- 解决 Class not found和Base table or view not found: 1051 问题
1.解决class not found的方法: 如果你用的是homestead虚拟机,那么,你要到虚拟机下执行: composer dump-autoload 2.解决Base table or vi ...
- java节假日api--关于节假日想到的
http://goseek.cn/index.php. 跟一园友讨论节假日问题得之一网址...涨姿势...(仅限中国节假日) http://api.goseek.cn/ 另一网友整理了测试类: htt ...
- nullpointerxception——处理思路
概念: 1.所谓的指针,就是java中的对象的引用.比如String s;这个s就是指针.2.所谓的空指针,就是指针的内容为空.比如上面的s,如果令它指向null,就是空指针.3.所谓的空指针异常,就 ...
- Raspberry pi 使用python+pySerial实现串口通信(转)
Raspberry pi 使用python+pySerial实现串口通信 转:http://blog.csdn.net/homeway999/article/details/8642353 目录( ...
- PHP Fatal error: Call to undefined function mysql_connect() 错误解释
我使用的是5.6.11版本的php 刚开始以为编译参数加了--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd,就可以不能安装mysql了. 但是使用了mysq ...
- windbg !logexts(自带的监控API)
Logexts.dll windbgth自带了跟进API的功能,这样我们可以方便的跟踪整个API的调用具体的示意图如下: !logexts.logi 将Logger注入目标程序,初始化监控,但是并不开 ...
- 为什么说,长跑和爬山能锻炼意志?因为要不停的run,run,run......
长跑和爬山教会我们的是无论做什么都要坚持,教会我们的是生活的态度. 如果不能体会到这一点,那你长跑的意义就是纯粹的锻炼身体. 中国教育的最大败笔就是教会了人学习,却没教会人思考.
- 下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片 将图片的二进制字节字符串在HTML页面以图片形式输出 asp.net 文件 操作方法
下载远程(第三方服务器)文件.图片,保存到本地(服务器)的方法.保存抓取远程文件.图片 将一台服务器的文件.图片,保存(下载)到另外一台服务器进行保存的方法: 1 #region 图片下载 2 3 ...