欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

为什么被curl请求页面的session_id是一直变化的

程序员文章站 2022-04-10 19:07:11
...
为什么被curl请求页面的session_id是一直变化的
假如:a.php用curl方式去请求b.php,那么b.php的session_id是一直变化的,这是为什么呢?
如果说a.php和b.php在不同的域,那么session_id不一直还能理解,我的a.php和b.php在同级目录,这是为什么?
为了安全方面的考虑吗

回复内容:

为什么被curl请求页面的session_id是一直变化的
假如:a.php用curl方式去请求b.php,那么b.php的session_id是一直变化的,这是为什么呢?
如果说a.php和b.php在不同的域,那么session_id不一直还能理解,我的a.php和b.php在同级目录,这是为什么?
为了安全方面的考虑吗

session是第一次请求生成的,并且放在cookie里的。如果不带着传给服务端,服务端会认为你是一个新的用户,然后给你生成一个新的session id。

你仔细琢磨一下,
curl是肯定不会带cookie之类的东西给服务端的,除非指定。所以,……

cookie里面存放着sessionID,每一次客户端发送请求时都会带上这个cookie(HTTP的无状态性)。
第一次curl请求b.php的时候,同时需要把cookie抓下来,保存到本地,你可以打开这个cookie看看里面的内容。
第二次再通过curl访问b.php的时候,把之前保存的cookie带上。

对,要带上cookie,模拟登录就是这个原理。

相关标签: php curl session