请求链接 www.shopxo.com/ 不要试cookie网站是假的
thinkphp 响应头返回:
set-cookie: PHPSESSID=bmnr1p3mnc9vgn6a4kjok7uq85; path=/
set-cookie: uuid=17c433d3-a60d-ecc6-4876-c5a177fa6663; path=/
set-cookie: PHPSESSID=b046a1cc9d0b9779a81905ecbbbd77f5; expires=Tue, 03-Sep-2024 19:37:50 GMT; Max-Age=43200; path=/
在 thinkphp 的 index 的 controller 中调用了
session_start();
session('uuid', $value);
cookie('uuid', $value);
这3个方法, session的name在配置文件中设置为PHPSESSID
问: session的数据怎么跑到了响应头set-cookie 中?
答: 从你的描述来看,响应头中的 Set-Cookie 字段包含了多次设置 PHPSESSID 和 uuid 的信息。让我们逐个分析一下:
- session_start(): 这会启动一个新的会话或恢复现有会话。启动会话时,PHP 会自动在响应头中添加
Set-Cookie,其中包含当前会话的PHPSESSID。 - session('uuid', $value): 这会将
uuid值存储在当前的会话中。此时,并不会直接影响响应头中的Set-Cookie。 - cookie('uuid', $value): 这会显式地设置一个名为
uuid的 cookie。在响应头中,你会看到相应的Set-Cookie。