1. cookie

HTTP 很重要一个特点就是无状态(每一次见面就是初次见面),如果单纯的希望通过我们的服务端程序去记住每一个访问者是不可能的,所以必须借助一些手段或者说技巧让服务器记住客户端,这种手段就是Cookie。

Cookie就像是在超级市场买东西拿到的小票,由超市(server)发给消费者(Browser),超市方面不用记住每一个消费者的脸,但是他们认识消费者手里的小票(Cookie),可以通过小票知道消费者之前的一些消费信息(在服务端产生的数据)

2.PHP中操作Cookie

http://php.net/manual/zh/function.setcookie.php

  1. 设置cookie
//setcookie是专门用于设置cookie的函数
setcookie( 'key','value' );

还有一种方式可以设置cookie

header('Set-Cookie:key=value');

2.获取cookie

var_dump($_COOKIE);

3删除cookie

//只传一个参数就是删除cookie
setcookie('key');

4,设置过期时间

//setcookie的第三个参数
//不传递就是会话级别的Cookie(关闭浏览器就会自动删除)
setcookie('key','value',过期时间);

5,cookie的默认作用域是’/‘根目录

//setcookie的第四个参数,传递的是一个路径
setcookie('key','value',过期时间,path路径);

6,setcookie还有第五个参数和第六个参数,可以自己去阅读文档

3.js中如何操作Cookie

//获取cookie(这里会返回所有的cookie的一个字符串结果)
console.log(document.cookie);
//设置cookie
document.cookie = 'key=value';
//设置cookie的过期时间(可以在客户端操作!)
document.cookie = 'cookie的key=cookie的value;expires=这里需要你拼接的过期时间';

4.Cookie中的问题及解决方案

因为客户端可能会伪造一个cookie(设置cookie的过期时间等)
这里我们就要解决这个问题,为此就需要学习session

Session

官话:由于Cookie是服务端发给客户端由客户端本地保存的。换而言之客户端可以在本地对其随意操作,包括删除和修改。如果客户端随意伪造一个Cookie的话,对于服务端是无法辨别的,就会造成服务端被蒙蔽,构成安全隐患。于是乎就有了另外一种基于Cookie基础之上的手段:Session

//开启session
session_start();
//设置session
$_SESSION['key'] = 'value';
//删除一个session
unset($_SESSION['key']);
//取一个session(这里取的值的类型,与存储值的类型一致,假如存储的是一个数字,取出来的值也是一个数字,而不是一个字符串,如$_COOKIE['key']取出来的就是一个字符串)
$_SESSION['key'];

Session区别于Cookie一个很大的一个地方就是:Session数据存在了服务端,而Cookie存在了服务端,而Cookie存在了客户端本地,存在服务端最大的优势就是,不是用户想怎么改就怎么该了

随手笔记Cookie相关推荐

  1. docker 安装git_docker随手笔记第十二节 jenkins+docker+nginx+纯静态页面配置

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  2. 配置多个git账号_docker随手笔记第七节 jenkins通过git部署java微服务插件安装

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  3. docker nginx配置_docker随手笔记第十二节 jenkins+docker+nginx+纯静态页面配置

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  4. 红宝书初步研读随手笔记

    红宝书初步研读系列–第一二三章 红宝书第一遍研读,知识点整理–随手笔记 第一章 什么是JavaScriptS 1.1. JavaScript包括: ECMAScript (核心)DOM(文档对象模型) ...

  5. Javassist 官方文档 随手笔记

    Javassist 官方文档 随手笔记 Javassist.CtClass Class search path Introspection and customization \$0, \$1, \$ ...

  6. C Primer Plus (第六版) 中文版 随手笔记(十二)

    声明:本篇文章只是个人知识盲区.知识弱点.重点部分的归纳总结,望各位大佬不喜勿喷.梳理顺序是按照书籍的实际顺序梳理,转载请注明出处. 作者:sumjess 适用:这本书我已经看过4遍了,但是该书的知识 ...

  7. 电商项目随手笔记(高级篇)

    项目笔记 Elastic Search 安装与使用 整合到Spring Boot 商城业务 商品的上架 Thymeleaf 配置Thymeleaf 一级分类的渲染 二级三级分类的渲染 缓存 Redis ...

  8. [JavaEE笔记]Cookie

    引言 由于 Http 是一种无状态的协议,服务器单从网络连接上无从知道客户身份. 会话跟踪是 Web 程序中常用的技术,用来跟踪用户的整个会话.常用会话跟踪技术是 Cookie 与 Session. ...

  9. PHP学习笔记-Cookie

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/51922536 本文出自:[顾林海的博客] 前言 距离写博客已经过了一两 ...

最新文章

  1. 《Adobe Photoshop CS5中文版经典教程(全彩版)》—第2课2.8节使用仿制图章工具修复特定区域...
  2. android仿qq聊天项目点评,android 实现qq聊天对话界面效果
  3. 【免费软件测试视频-0016】——LR系列之---协议的选择
  4. error LNK1104: 无法打开文件“ComService.lib”
  5. linux下file命令使用技巧
  6. Qt工作笔记-QT_BEGIN_NAMESPACE与QT_END_NAMESPACE的理解
  7. python3 socket 接收 bytes 长度 会变,Python解析Socket数据流异常bytes的问题(详细)...
  8. Thread was being aborted.(调试或执行较长时间的程序时发生的错误)
  9. Latex--插入表格
  10. 关于java的国内外论坛地址分享
  11. Java之字符串数组元素的排列与组合(递归实现)
  12. jemter ramp-up
  13. Problem 2 慢跑问题
  14. linux内存中的文件权限,Linux系统管理(用户权限、磁盘存储、文件系统、内存、进程)...
  15. Acwing-4645. 选数异或
  16. 懂你的心 愿您的笑颜永在阳光下挥洒
  17. Newline required at end of file but not found.
  18. 机器学习因子:在线性因子模型中捕捉非线性
  19. 【奔腾的骏马---Html+CSS实现(附源代码)】
  20. 电子信息工程跨考计算机武大,我考研的一些经历吧——电气(武汉大学)

热门文章

  1. Ceph Calamari软件包介绍
  2. 2022图书出版行业营销白皮书-巨量引擎
  3. 数据结构C语言代码实战
  4. Crossbar正式进入中国存储市场
  5. 解决echarts饼图label显示不全的问题
  6. springboot集成canal,实现缓存实时刷新,驼峰问题
  7. deepin v20桌面bug_“国产”Deepin桌面操作系统V20 正式版
  8. 我的Python分析成长之路2
  9. 这就是爱情,虚伪得不可理喻_伤感日志
  10. 计算机网络应用最简单的,计算机网络的基础知识和简单应用.ppt