51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2280|回复: 1
打印 上一主题 下一主题

[在学] 有个关于cookie的疑问想请老师解答一下

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-8-31 10:21:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
老师,
清除了浏览器里的所有cookie后,打开一个网站的登录页,response header里有个set-cookie;输入用户名和密码登录后,request header里有个cookie,但是这个cookie和登录之前的set-cookie的值是不一样的,请问老师,访问的是同一个网站,为什么登录前和登录后这两个值是不一样的?


在学课程:
Web系统原理
http://www.atstudy.com/course/423
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2018-8-31 10:40:05 | 只看该作者
同学你好,请仔细对比一下登录页面(登录前)response header中返回的cookie值(键值对a),以及登录提交时(用户名密码输入后,点击登录按钮提交到目标页面)这个时候request header中的cookie值(键值对b);a和b不是必须完全相同,但是b中的某些键值对肯定能匹配上a中的一部分键值对;

通常来说,服务端返回的cookie指不是一个,而是一些列键值对, 当我们登录提交的时候往往只需要用到之前服务端返回的cookie值中的一个,或者某几个而已,未必一定是全部;

以我们博为峰网校为例,当你到达登录界面时,response header中的cookie形式如下:

Set-Cookie: PHPSESSID=i83r9ccd9hu42f68lleipar0am; path=/; HttpOnly

然后在登录界面输入用户名密码后,点击登录提交按钮,这个时候你会发现你的request header中包含了cookie键值对如下:

Cookie: PHPSESSID=i83r9ccd9hu42f68lleipar0am; UM_distinctid=16583801e1c5dd-0f85c11b7a2a95-47e1f32-e1000-16583801e1d6f; CNZZDATA1254842616=704806755-1535506554-https%253A%252F%252Fwww.atstudy.com%252F%7C1535506554; online-uuid=7B352937-84A1-39FB-AFE8-C00EFE7C8595

其中第一对键值对就能和之前的来自于服务端的cookie键值对匹配上;

以上可以自己多尝试对比几次;需要注意的是cookie值都是随机生成的,每次的值会不同,但是request header中肯定能够匹配上先前response header中的某一部分的键值对
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-20 20:27 , Processed in 0.065528 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表