gpt4 book ai didi

php - 如何在 PHP 中重新初始化 session ?

转载 作者:可可西里 更新时间:2023-11-01 00:54:03 24 4
gpt4 key购买 nike

我正在尝试将现有的支付平台集成到我的网上商店中。交易成功后,支付平台向我的应用程序中的一个 URL 发送请求,并在查询参数中包含交易 ID。

但是,我需要做一些后处理,例如发送订单确认等。为此,我需要访问用户的 session ,因为那里存储了很多与订单相关的信息。为此,我将 session_id 包含在初始请求 XML 中,并在事务完成后执行以下操作:

$sessionId = 'foo'; // the sessionId is succesfully retrieved from the XML response
session_id($sessionId);
session_start();

上面的代码工作正常,但是 $_SESSION 仍然是空的。我是不是忽略了什么或者这根本不可能?

编辑:

谢谢大家的回答。问题还没有解决。如前所述,奇怪的是我可以使用属于下订单用户的 session_id 成功启动新 session 。还有其他想法吗?

最佳答案

不是您真正想要的,但是在将客户发送到付款服务之前,您不需要将订单保存到数据库中吗?当您收到付款确认时,最好在订单的后处理中依赖持久化数据。

依赖 session 是不可靠的,因为您不知道此确认需要多长时间(通常是即时的,但在极少数情况下会延迟)。

此外,如果您的网络服务器在此期间重新启动,将使您丢失相关数据。

第三个问题是,如果您有一个负载平衡解决方案,具有单独的 session 管理(非常常见),那么您将无法保证支付服务器和您的客户端将到达同一网络服务器(因为粘性通常是来源-基于 IP)。

关于php - 如何在 PHP 中重新初始化 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/325836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com