调侃Cookie
近期看着某些小朋友那琢急的学习心态,瞬间发文一篇,谨此以助小朋友早日有成!
闲话不扯远,实话见真言,晃悠许久觉得开头还是谈谈Cookie这只菜篮,而且是一只私家菜篮,为啥说它是一只菜篮呢,各位看官必定见过菜篮,不过如果是高富帅,或是白富美,那就还得劳驾您去百度图库搜张图喵上一眼。在菜市场一眼望去,除了大妈的吆喝声,那最显眼的就是大妈手中的菜蓝,菜蓝里五花八门什么都有。
言归正转,cookie 在asp.net这个菜市场里,充其量也就是一只菜蓝,现在各位看观也就是拎菜蓝的大妈,真没说各位看观都是大妈,只是形容,纯属比喻。我们浏览的打开的很多网站都会把一些基本信息放在我们的浏览器的Cookie当中也就是我刚说的菜蓝。
客位客观可能也会问,是怎样生成的?到底cookie在哪里呀?cookie 在.net 下可以在客户端用JS创建,也可以在页面下用.net 创建,用respone输送到前台。大家可以查看一下浏览中的存的Cookie (怎么查,本文不述,看观自问度娘),咋一看网站存这些乱七八糟的是什么玩意呀,堪比火星文(别紧张一般是加密的),回到大妈来,大妈去菜市场买菜肯定都是一些重要的食材,用来做美味的,那我们ASP.NET 中菜蓝(cookie)也不可能一直是装素的吧。cookie里装的也有鸡肋的,比如用户登录的一些帐户信息,登录验证码和一些密钥。。。很多网站没有咱cookie这菜蓝早就over了。
看到了鸡肋是否有点心动,看观别急,你的鸡肋别人可是不是这么轻易拿的。就好比大妈的菜篮是大妈的,里面的菜别的大妈可不是轻易能动的哦,拿了大妈会怒的,这是人家的私房菜.我们的cookie也是这样的,别的网站的cookie也不是轻易能访问得到我们的cookie,因为有一个跨域的问题,就像我们刚说的一样这个大妈不可能轻易的去拿别一个大妈菜蓝子里面的菜。好了,峰回路转,刚说到一个网站的Cookie不是那么轻易的访问另一个网站的Cookie,即然是不轻易,看观肯定还是能看出些端倪的。大妈要想去拿另一个大妈菜蓝里面的菜,首要必须要满足以下几个条件:1、两个大妈是一家的。2、两个大妈是熟人 。除了以上两个条件,比较合法成立的外,各位看客想出来的,就自已在心里偷笑会吧。
各位看观请换回频道来,我们的cookie也是这样的,也需要满足以下几个条件的:1、同一个公司同一个域名的站点。2、公司的合作伙伴许可。除了以上两个条件比较合法成立的外,各位看客想出来的,就也再次自已在心里偷笑会吧。因些我们的cookie提供了跨域功能,只需设置cookie的domain为同一域名就可以,比如把domain都设成xxx.com就可以两个站点相互访问了。刚只是说了其中的一种,还有一种就是通过iframe钳套,在一个网页中钳入一个iframe实现cookie访问。这下大妈间就能谈笑互换菜蓝子里的菜了。
是否感觉大妈间只要关系好,就能随意拿菜蓝子里的菜了,这也不一定,大妈可不是那么傻的人,大妈都是人精的,好不容易得来的鸡肋,怎么可能给别人,必定留一手的。cookie也是这样的,我们网站的一些重要的帐户信息不可能轻易的就被前端的Js给抓去用了,也必定要留一手的。所以我们的cookie也像大妈一样,留了一手,只要将Httponly 设为true,就万事大吉,前端的js休想访问,大妈就可以偷着乐了。
cookie这个菜蓝还真聪明的呀,最后还有一点就是,大妈买菜也不可能是从早上一直呆在菜市场买到晚上的吧,如果这样的话家人都会叫起来的。因此大妈买菜也是有时间限制的,大妈的时间有限制说明菜蓝子呆在菜市场的时间也是有限制的。因此我们的菜蓝(cookie)也是有时间限制的,我们可以通过expires来为我们的cookie设置相关过期时间的,如果不设置也就默认为网站会话过期时间,关掉浏览器cookie也会消失的。
通篇概述,cookie就完成了与大妈买菜这一相似的举动,主要是为了便于存储一些看似重要但又不重要的信息,(重要在于它能够一定程度的标记一些会话信息,不太重要在于它一般多次加密和需多个密钥才能破解),更重要在于减轻服务器的压力,加快网站响应,实现状态管理,继承于富客户端的理念。
调侃Cookie的更多相关文章
- vue + spring boot + spring security 前后端分离 携带 Cookie 登录实现 只写了个登录
最近想弄一下vue 所以就自己给自己找坑入 结果弄的满身是伤 哈哈哈 首先我说下 前后端分离 跨域请求 我在网上找了一些 可是都是针对于 spring boot 的 我自己还有 securi ...
- 超大 Cookie 拒绝服务攻击
有没有想过,如果网站的 Cookie 特别多特别大,会发生什么情况? 不多说,马上来试验一下: for (i = 0; i < 20; i++) document.cookie = i + '= ...
- IE10、IE11 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题
你是否遇到过当使用一个涉及到Cookie操作的网站或者管理系统时,IE 6.7.8.9下都跑的好好的,唯独到了IE10.11这些高版本浏览器就不行了?好吧,这个问题码农连续2天内遇到了2次.那么,我们 ...
- 解决cookie跨域访问
一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- 一个诡异的COOKIE问题
今天下午,发现本地的测试环境突然跑不动了,thinkphp直接跑到异常页面,按照正常的排错思路,直接看thinkphp的log 有一条 [ error ] [2]setcookie() expects ...
- [转载]Cookie/Session的机制与安全
Cookie和Session是为了在无状态的HTTP协议之上维护会话状态,使得服务器可以知道当前是和哪个客户在打交道.本文来详细讨论Cookie和Session的实现机制,以及其中涉及的安全问题. 因 ...
- jquery.cookie的使用
今天想到了要为自己的影像日记增加赞的功能,并且需要用到cookie. 记得原生的js操作cookie也不是很麻烦的,但似乎jquery更简单,不过相比原生js,需要额外引入2个文件,似乎又不是很好,但 ...
- 跨域问题,前端主动向后台发送cookie
跨域是什么? 从一个域名的网页访问另一个域名的资源,就会出现跨域.只要协议.端口.域名有一个不同就会出现跨域 例如: 1.协议不同 http://www.baidu.com:80 和 https:/ ...
随机推荐
- 第五篇:R语言数据可视化之散点图
散点图简介 散点图通常是用来表述两个连续变量之间的关系,图中的每个点表示目标数据集中的每个样本. 同时散点图中常常还会拟合一些直线,以用来表示某些模型. 绘制基本散点图 本例选用如下测试数据集: 绘制 ...
- 第二篇:Power BI数据可视化之基于Web数据的报表制作(经典级示例)
前言 报表制作流程的第一步显然是从各个数据源导入数据,Power BI能从很多种数据源导入数据:如Excel,CSV,XML,以及各类数据库(SQL Server,Oracle,My SQL等),两大 ...
- Android程序版本更新--通知栏更新下载安装(转)
Android应用检查版本更新后,在通知栏下载,更新下载进度,下载完成自动安装,效果图如下: 检查当前版本号 AndroidManifest文件中的versionCode用来标识版本,在服务器放一个新 ...
- 将JSON数组显示前台Table中
将JSON数组显示前台Table中 在最近的学习中遇到一个小问题,如何把JSON数组显示在前台的table中,经过一番借鉴和学习之后终于解决了这个问题.具体的代码如下: (前提:利用ajax获取过来的 ...
- Python多进程使用
[Python之旅]第六篇(六):Python多进程使用 香飘叶子 2016-05-10 10:57:50 浏览190 评论0 python 多进程 多进程通信 摘要: 关于进程与线程的对比, ...
- 转载:C#中的多态
原文地址 http://www.cnblogs.com/jhxk/articles/1644018.html 感谢博主分享! 之前看到过类似的问题:如果面试时主考官要求你用一句话来描述多态,尽可能的 ...
- javascript 获取用户光标,插入文本
图1 如图1所示,点击[函数名称],将函数名称添加到表达式内容框中,点击参数名称,将参数名称index1作为方法的参数添加到表达式内容中的表达式中. 该功能实现主要是采用了javascript获取鼠标 ...
- js单条新闻向上滚动
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- ASP.NET Core中使用Razor视图引擎渲染视图为字符串
一.前言 在有些项目需求上或许需要根据模板生产静态页面,那么你一样可以用Razor语法去直接解析你的页面从而把解析的页面生成静态页,这样的使用场景很多,不限于生成静态页面,视图引擎为我们提供了模型到视 ...
- 跟我学android-常用控件之EditText
EditText 是TextView的直接子类,它与TextView的区别在于,EditText可以接受用户输入. 下面通过一个实例来说明EditText的用法 实例:sina 微博的登录界面(注意, ...