0

我正在使用带有 Soap 的 Symfony 2。我用肥皂将参数传递给 Symfony。我的计划是参加一个会议,但备份失败。

这是标准保存宽度 symfony(第一次运行):

$sess = $this->getRequest()->getSession();
$sess->set('parameter', 'parameter');
echo $sess->get('parameter'); //This whill write 'parameter' when send data with soap

当我删除设置功能时,会话将比第二次肥皂运行(第二次运行)丢失:

$sess = $this->getRequest()->getSession();
//$sess->set('parameter', 'parameter');
echo $sess->get('parameter'); //Do not write off anything

它说该会话上的 symfony.com 适用于:

...存储有关用户的信息(无论是使用浏览器、机器人还是 Web 服务的真人)...

4

1 回答 1

0

会话是通过 PHPSESSID cookie 或查询参数识别的(按标准)。因此,如果您想要一个标准的浏览器会话,您的肥皂客户端必须存储他在第一次请求时获得的 PHPSESSID cookie,并在进一步的请求中或使用查询参数发送它。

但是网络服务应该是无状态的。如果您需要通过请求识别客户端,请使用 OAuth 令牌。看看FOSOAuthServerBundle

于 2013-05-07T14:50:36.713 回答