0

我想在没有会话的情况下使用棘轮,并在我的 Web 应用程序和棘轮之间Symfony使用处理程序处理会话。php但它不起作用。

我的会话处理代码:

运行服务器:session.php`

ini_set('session.save_handler', 'memcached' );
ini_set('session.save_path', 'localhost:11211' );

use Ratchet\Server\IoServer;
use Ratchet\WebSocket\WsServer;
use MyApp\Chat;

    require dirname(__DIR__) . '/vendor/autoload.php';
    require __DIR__ . './../src/MyApp/Chat.php';

    $server = IoServer::factory(
    new WsServer(
    new Chat()
    )
    , 8080
);

    $server->run();

我的应用程序:chat.php

public function onOpen(ConnectionInterface $conn) {

        // Store the new connection to send messages to later
        $this->clients->attach($conn);

        session_start();

        echo "New connection! ({$conn->resourceId})\n";
        $conn->send('Hello ' . session_id());

客户端 :

ini_set('session.save_handler', 'memcached' );
ini_set('session.save_path', 'localhost:11211' );

session_start();

require __DIR__ . './../server/vendor/autoload.php';

$_SESSION['name'] = $_GET['name'];

if (isset($_SESSION['name'])) {
    var_dump($_SESSION['name']);
} else {
    echo 'Not set!!!';
}

我的请求网址: localhost/myfile/?name=shahrokh

4

1 回答 1

1

这行不通。来自棘轮文档

为了在 Ratchet 中访问您的会话数据,您还必须在您的网站上使用相同的 Symfony 会话处理程序。

于 2013-07-23T16:03:08.747 回答