0

Symfony 2.0 から 2.1 への移行を試みているときに、興味深い問題を見つけました。

ダウンロードしたばかりの Symfony 2.1 のコピーでも、ネイティブ セッション ID を取得できません。

/**
 * @Route("/sess")
 */
public function sessionAction()
{
    $session = $this->getRequest()->getSession();
    return new Response($session->getId());
}

そこで大きく変わったことはありますか?

4

1 に答える 1

5

このドキュメントを見てください(app / config / config.ymlセクションの下)

Symfony 2.1では、セッションは常にオンデマンドで開始されます。ですから、あなたが見ているのは通常の振る舞いです。セッションIDを取得する前に、セッションを明示的に開始する必要があります。確認していませんが、最初の変数を設定するとセッションが開始される可能性があります。これは、set()を呼び出した後に機能するためです。

于 2012-09-08T10:51:11.973 に答える