思考一:为什么要禁用Cookie?

首先,cookie是服务端生成返回给客户端的,客户端会保存cookie到本地,甚至会永久保存。cookie有跨域(协议、域名、端口其中有一个不同就会产生跨域问题)问题。

cookie是和http捆绑在一起的,应该是当时科学家在设计http协议时就定义死了一个叫做cookie的字段用来保存会话信息。

既然http协议定义了一个cookie字段用来保存会话信息,那么我们就可以将会话信息保存到cookie里面,并返回给客户端。

cookie:加密(用户信息)

因为大家都遵循http协议,因此客户端也可以获取到cookie字段,然后客户端会保留cookie到本地(其实这个是客户端开发者决定的,保不保存都可以,但是浏览器都是默认保存的,因此在开发web项目时,要考虑是否应该使用cookie,目前有的浏览器默认禁用cookie)

cookie的优缺点:

不管什么技术都有着自身的局限性,我认为cookie没有什么严重的缺点,主要是看你的业务情况,是否适合使用cookie。有的说cookie有安全性问题,会被拦截转发。我觉得不算是cookie的问题,因为数据在网络上传输,肯定会有被拦截的情况。这又是另一个问题。

使用环境:

1、web项目还是java项目?

2、单体、集群还是分布式?

不管什么使用环境都可以使用cookie,技术都是为了解决业务问题。

个人经历:

我司有个项目和腾讯教育合作,有一个功能是嵌入腾讯平台的,因为腾讯禁用了cookie。我们就直接定义一个token放到请求头中,通过这个token来跟踪会话,其实和cookie的原理是一样的。

思考二:session会话机制

cookie是将会话信息保存到客户端,session则是将会话信息保存到服务端,返回会将sessionId保存在cookie里面返回给客户端。(如果禁用了cookie,其实也可以参考我上面的方式,单独创建一个请求头来保存,比如token)

服务器创建session会保存到内存中,那么在使用session时要注意使用的环境。在集群和分布式下,session是独立的,因此要做session共享。

session和cookie都有超时设置。因为session是保存在内存中的,还需要注意内容溢出问题,需要设置session超时,要注意清空过时的session,释放内存。

为什么要禁用Cookie?相关推荐

  1. 禁用Cookie在web浏览器中读取/写入c#应用程序

    我希望网站无法读取cookie或在webbrowser c#控制应用程序中写入新的cookie.当webbrowser c#应用程序运行时,我宁愿禁用所有网站的所有读/写cookie操作,如果不是,那 ...

  2. springboot 禁用 cookie / chrome 禁用 cookie

    前言 360极速浏览器 12.0.1524.0 (正式版本) (32 位) 测试 springboot 功能时,需要先禁用 cookie.先想到的方法为,让 springboot 禁用 cookie. ...

  3. php禁用cookie后session设置方法分析

    本文实例讲述了php禁用cookie后session设置方法.分享给大家供大家参考,具体如下: 我们都知道当在session会话有基于cookie和基于url两种传递SESSIONID的方法.为了实现 ...

  4. JS判断 浏览器 是否禁用Cookie

    该属性是一个只读的布尔值. 语法:navigator.cookieEnabled 如果浏览器启用了cookie,该属性为true.如果禁用了cookie,则值为false.实例1: 检测浏览器是否启用 ...

  5. 禁用Cookie后,Session怎么样使用

    转载自  禁用Cookie后,Session怎么样使用 在上篇中更多的是在分析通过Session Cookie这一方式,在每次请求时都将 sessionId以Cookie的形式发到服务端,来保持一致. ...

  6. php开发面试题---禁用cookie之后,如何使用session

    php开发面试题---禁用cookie之后,如何使用session 一.总结 一句话总结: 在每个url后面自动加上PHPSESSID的值即可,用户禁止cookie后,服务器仍会将sessionId以 ...

  7. php在客户端禁用cookie时让session不失效的解决方法

    cookie固然好,不过有些客户端浏览器会禁用cookie,这就会导致你所依赖cookies的程序会失效或出错,那么若真出现用户关闭cookies的情况,PHP应该如何再次使用session?方法还是 ...

  8. 浏览器禁用cookie后session还能用吗?cookie与session区别

    答:浏览器禁用cookie后session不能正常使用. cookie是一种客户端的会话技术,它是服务器存放在浏览器的一小份数据,浏览器以后每次访问该服务器的时候都会将这小份数据携带到服务器去. se ...

  9. Chrome谷歌浏览器清除Cookie值和禁用Cookie

    如何清除Cookie值呢? 点击右上角的 三个点 下拉选择 --> 设置 --> 高级设置 --> 隐私设置和安全性 --> 清除游览器数据 . 完成后重新打开游览器就行了 如 ...

  10. 客户端禁用Cookie后session失效的问题

    客户端禁用Cookie后session会失效,该如何解决?解决方法:使用URL重写技术URL重写:在原来的URL后面加上";jsessionid=123456789" 即:url- ...

最新文章

  1. d06调试详细说明_D06电脑板调试软件使用说明_20100706
  2. [js] axios为什么可以使用对象和函数两种方式调用?是如何实现的?
  3. filebeat + es 日志分析
  4. sql union 行数不同_十八般武艺玩转GaussDB(DWS)性能调优(二):坏味道SQL识别
  5. Visual Studio Code(VSCODE)语言设置
  6. 解决中64位Win7系统上PLSQL无法连接ORACLE的方法(PLSQL无法识别ORACLE_HOME的配置)
  7. 无线网卡的Master,Managed,ad-hoc,monitor模式
  8. postfix+web页面+身份验证
  9. 2018 KDD CUP支付宝安全团队Deep X斩获两项大奖
  10. python音乐推荐系统的设计与实现_基于协同过滤的音乐推荐系统
  11. python抽签代码,python:选房抽签小工具
  12. User Manual
  13. LM393低功耗双电压比较器参数、引脚、应用详解
  14. tampermonkey这玩意如何替换flash播放器为h5播放器?
  15. SAP ERP和ORACLE ERP的区别是哪些?
  16. Polynomial Commitments代码实现【2】——lovesh/kzg-poly-commit
  17. 你是否知到西游记中孙悟空的师傅是什么人?
  18. 快速申请开通公众号门店小程序-微信小程序开发-视频教程7
  19. 图像处理公共数据库下载地址集锦
  20. 支付设计白皮书:支付系统的总架构

热门文章

  1. 电巢:半导体ATE国产化产业探究(附国内外厂家汇总)
  2. 新手自学php,curl应用时接口数据无返回值
  3. 架构师接龙:金山张宴VS.淘宝岑文初
  4. vue 项目统计网站pv uv
  5. php stristr,PHP中strpos、strstr和stripos、stristr函数分析
  6. Android Linker详解(二)
  7. c语言反cot函数,算三角函数的软件 安卓哪些软件可以计算反三角函数
  8. 信用评分卡--R语言
  9. 电脑右下方没有wifi图标了,网络连接里面也没有!
  10. 莫让时间从指缝中溜走