如果某人登录网站(网站A )且该网站创建了会话变量,则其他网站(网站B )是否可以对PHP例程进行cURL调用在网站A 上,网站B 使用网站A 的会话变量发回json变量?
如果是这样,我该如何做到这一点?
这是我想到的情景:
通过cURL可行吗?
感谢。
答案 0 :(得分:2)
没有试过这个,所以我不知道它是否会起作用,但我最好的猜测是得到类似于你想要的东西如下。
假设两个网站都在同一台服务器上,您可以手动设置session_id(),然后跟踪此值。然后,您将此ID字符串发送到网站B,并使用相同的ID调用session_id()。
http://php.net/manual/en/function.session-id.php
如果您的网站不在同一台服务器上,那么您需要编辑php.ini并将会话存储连接到像memcache这样的服务。
例如。
网站A:
session_id('test');
$_SESSION['hello'] = "hello world\n";
网站B:
session_id('test');
echo $_SESSION['hello'];
显然,您需要为上述工作做更多工作,因为您需要为每个用户/请求生成唯一ID。
答案 1 :(得分:1)
由于我的网站在同一台服务器中不,因此我必须这样做才能使其正常工作(没有 memcache )。这不是最优雅的解决方案,但这就是我如何使其工作,即如何向网站A 发送网站B 的会话变量的内容:
header()
重定向到网站B 。 网站A 中的请求php将其网址作为查询字符串的一部分发送,因此网站B 知道将答案发送到何处。session_id()
获取 会话ID 并将其发回网站A 通过自动提交帖子表单。注意:没有 会话ID ,网站B 会向网站发送一个空会话变量A 强>