码迷,mamicode.com
首页 > Web开发 > 详细

正确理解web交互中的cookie与session

时间:2017-04-13 12:57:37      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:iss   views   net   exp   too   style   文本   存储   com   

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

 

  1. setcookie(name, value, expire, path, domain, secure);  
  2. /* 
  3. name cookie键名 
  4. value cookie值 
  5. expire cookie在客户端过期的时间 
  6. path 服务器路径 
  7. domain 域名 
  8. secure 是否https通道 
  9. -------------------------- 
  10. 当用户请求的uri符合 
  11. secure + domian + path 这个路径 
  12. cookie才会被发送给服务器 
  13. */  
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

标签:iss   views   net   exp   too   style   文本   存储   com   

原文地址:http://www.cnblogs.com/kabi/p/6703203.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!