如 ws://wenda.com/path
如果獲取這個path
http://doc.workerman.net/appendices/about-websocket.html
手冊有
$ws = new Worker('Websocket://0.0.0.0:8181');
$ws->onConnect = function($connection)
{
// websocket 握手時可以獲得$_GET
$connection->onWebSocketConnect = function($connection , $http_header)
{
var_dump($_GET);
};
};
在WORKER里獲取了這個路徑 后,我把它放在$_SESSION里,然在在業(yè)務(wù)處理EVENT.PHP中讀這個$_SESSION中是空的,請教如何處理
每次Gateway進(jìn)程轉(zhuǎn)發(fā)消息給BusibuessWorker進(jìn)程時,都會順便攜帶上對應(yīng)客戶端的$_SESSION數(shù)據(jù)給BusibuessWorker進(jìn)程,這時BusibuessWorker進(jìn)程就能使用$_SESSION了
文檔里不是說可以的? 這兩個進(jìn)程共享數(shù)據(jù)還是有必要的吧?
都會順便攜帶上對應(yīng)客戶端的$_SESSION數(shù)據(jù)給BusibuessWorker進(jìn)程。
說的是對應(yīng)客戶端的$_SESSION數(shù)據(jù),不是說在gateway設(shè)置個全局$_SESSION
變量,就傳到event.php中去了,這個session數(shù)據(jù)是存儲在每個gateway的連接對象里面的。在gateway進(jìn)程中設(shè)置的$_SESSION
變量根本無法確認(rèn)是屬于哪個連接對象,更不要說傳遞了,只有在event.php中才能設(shè)置連接的session,gateway進(jìn)程對$_SESSION的操作都是無效的。