会话在请求之间丢失

时间:2014-02-24 17:34:09

标签: php symfony curl sessionid

在谈论我的问题之前,我将简要描述我正在进行的项目。

一方面,我正在研究API(基于symfony 2.x)。该API将(将)用于网站和智能手机应用程序,并将处理我需要对我的数据库执行的所有请求。

另一方面,我正在开发一个网站(也基于symfony 2.x)。在这个网站中,我使用curl来处理API上的请求。

我发送一个curl请求登录,另一个刚刚获取一些数据(我需要登录才能获取该数据)。我为所有请求保留了相同的处理程序(因此通常不会丢失与API的连接)。

所以,问题是,在我登录后,我发送的第二个请求我收到一条错误消息,说我需要登录才能这样做。 经过研究,我发现每个请求的会话都不同(会话ID不同),所以有关登录用户的所有信息都会丢失。

我在想,由于这两个请求之间的连接没有关闭,因此会话应该是相同的。

你们有没有想过为什么会这样?

感谢您的帮助,

2 个答案:

答案 0 :(得分:0)

TODO

  • 一定要有session_start();
  • 检查$ _SESSION数组是否
  • 不会以某种方式覆盖您必须重定向到同一个域。检查
  • session_save_path及其权限

答案 1 :(得分:0)

问题解决了。

我发现API没有在响应标头中设置PHPSESSID cookie。

无论如何,谢谢你的帮助