从 CLI 到浏览器共享会话 ID

发布于 2024-10-22 23:38:33 字数 583 浏览 7 评论 0原文

我有一个从浏览器到在 CLI 上作为 websocket 服务器运行的 php 脚本的 websocket 连接。

我让客户端发送其位于服务器上的 session_id 我知道哪个用户拥有哪个会话。

它可以完美地读取单个用户的 $_SESSION 。

我这样做(在服务器端[我的 CLI 代码]):

$sess_ini = ini_get('session.save_path');
$save = file_get_contents("$sess_ini/sess_$sessionID");
session_id($sessionID);
$sessions = explode("|",$save);
$_SESSION['values'] = (isset($sessions[1])?
                        unserialize(trim(urldecode($sessions[1]))):array());

然后,当我在 CLI 服务器端操作 $_SESSION['values'] 时,它不会反映在客户端会话上,并且会话不会被操作。我该如何将被操纵的会话发送回客户端?

谢谢!

I have a websocket connection from the browser to a php script running as a websocket server on CLI.

I have the client send its session_id that was on the server i know which user has which session.

It works perfectly to read the $_SESSION of the individual users.

i do (on the server side [my CLI code]):

$sess_ini = ini_get('session.save_path');
$save = file_get_contents("$sess_ini/sess_$sessionID");
session_id($sessionID);
$sessions = explode("|",$save);
$_SESSION['values'] = (isset($sessions[1])?
                        unserialize(trim(urldecode($sessions[1]))):array());

Then when i manipulate $_SESSION['values'] on the CLI server side it does not get reflected on the client session and the session is not manipulated. how do i make it so the manipulated session is sent back to the client?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏花。依旧 2024-10-29 23:38:33

您可以将 sessionId 写入数据库中的用户表
与 CLI 和 Web 相比,您必须使用以下命令:

session_id($sessionFromDb);

You could write sessionId to users table in DB
And than in CLI and Web your must use this:

session_id($sessionFromDb);
蓝色星空 2024-10-29 23:38:33

我的代码中有一个错误。

会话正在保存,我只是忽略在更改之前输出它,所以看起来它从未改变。

There was an error in my code.

The session was being saved, i just neglected to output it before it was changed so it looked like it never changed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文