多个项目相互用单点登录的Session问题
发表于:2023-04-25 18:59:17浏览:364次
收藏
有以下系统,
项目A,项目B,项目C...
其中,项目A 作为 主服务端,其他作为 从客户端
1、B 登录,Curl 调用 A 的接口,在 A 产生 Session
2、然后,B 跳转 C ,同样 Curl 调用 A 接口,校验 Session
这里,一般的模拟请求会 忽视, 不同会话的 PHPSESSID 并不共通,是拿不到 别的请求产生的 Session 的,
如上面 2 校验 Session 的时候,就会导致取不到 Session 报错,
解决办法:Curl 传递会话ID
$strCookie="PHPSESSID=".$_COOKIE['PHPSESSID'];
curl_setopt($ch, CURLOPT_COOKIE, $strCookie);