深入理解cookie的前世今生

        提到cookie和seesion,相信很多人都知道,但是只是浮于表面,如果要他们详细的叙述原理及应用,估计很多人答不上来。

相对于session存储在服务端来说,cookie是存储在客户端浏览器的。下面我将从几个方面来说明cookie。

cookie从哪里来

      1、服务端返回

      2、客户端自己存储

cookie到哪里去

       对于浏览器来说,每当发送一个请求时,浏览器会检查该域名下面的cookie,如果存在,浏览器就会在http请求头中加上该cookie,发送给服务的。对于android和ios来说,其提供的http api会处理

cookie存储在哪里

      cookie存储在客户端磁盘上,以域名分组存储

怎样查看cookie

       三步,看图

        

 

下面通过12306来具体分析下cookie怎么用

首先我清除  kyfw.12306.cn  对应域名下的cookie,然后用charles抓包分析。

发送请求  https://kyfw.12306.cn/otn/leftTicket/init

由 2 可以发现请求头里并没有cookie,由 3 可以发现返回里服务端设置了cookie,值分别是 route, JSESSIONID, BIGipServerotn,我们不分析该cookie的作用。此时我们再去chrome里可以发现该cookie 

刚好是返回的三个。

接下来,我们继续操作,查询余票看看会发生什么

再来看看cookie

        虽然这一下,发送了很多请求,但我们发现,这些请求中除了最后一个查询余票的请求浏览器始终没有返回cookie,而从2我们可以发现这个请求比上一个请求返回的cookie多了7个cookie,当然你也可以去浏览器查看下,我查看过了,浏览器也有了这些cookie,我就不贴图了。既然浏览器并没有返回,那么这些cookie是从哪儿来的呢?还记得,上文中,我们说过cookie的两种来源吗,此时就是第二种,由客户端自己生成的。那么作为一个严谨的程序员,我们必须找到生成这些cookie的地方。

        怎么找呢?我们知道,这些cookie是在点击  查询  按钮后生成的, 能生成cookie的只有 js 了,所以我们只要找到第一次请求后返回的js中哪个文件是操作cookie的就可以了。可以先看下所有js文件的文件名,很辛运很快就找到了。

相信到这里,大家都知道cookie是怎么一回事了吧。

 

 

最后 由于春运快到了,给大家安利一个抢火车票的小程序心到抢票,微信扫码关注点击立即抢票即可

个人亲测效率很高,大家也可以加他们官方微信  xdticket  咨询。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值