急求大佬指點(diǎn)啊,現(xiàn)在卡在這一步了
研究了一下午了都獲取不到bindUid里面綁定的uid
下圖是在onClose里面獲取
下圖是輸出內(nèi)容
自帶的getSession 存取方法也試了。都拿不到綁定的uid
首先onClose()里是不能使用 GateWay::getSession()方法的,看你代碼邏輯和bindUid()也沒(méi)啥關(guān)系呢,你的問(wèn)題是獲取不到對(duì)應(yīng)的session值吧, 不管怎樣,這里使用$_SESSION操作才是正確姿勢(shì), 你session賦值的操作是在什么地方進(jìn)行的? 最簡(jiǎn)單的排除辦法就是: 在圖session賦值的后面打印$_SESSION的值先看看有沒(méi)有寫成功。
老哥。謝謝你的回復(fù)
不過(guò)你說(shuō)的bindUid我搜索出來(lái)幾個(gè),在里面都試了沒(méi)用,下圖
我用的是gateway加GatewayClient
bindUid方法是在這里調(diào)用的,然后寫的$_SESSION存值
在這個(gè)控制器里面打印$_SESSION是有數(shù)據(jù)的,
但是在events的onClose方法里面使用$_SESSION取值 就啥也沒(méi)有
你問(wèn)題雖然解決了,但是我認(rèn)為你并沒(méi)有理解正確,我再啰嗦下也許有助于你后續(xù)類似問(wèn)題的解決:
1、補(bǔ)充的截圖代碼看上去是web應(yīng)用業(yè)務(wù)端,lxd_did()方法里的那個(gè)$_SESSION要么是php-fpm的,要么是apachehandler的,不管怎樣肯定不是gatewayworker的$_SESSION,這兩個(gè)是完全不同的東西,換句話:你這個(gè)地方必須使用 gateway的setSession()接口遠(yuǎn)程操作;
2、保存和讀取session使用$_SESSION或者 setSession()、updateSession()、getSession()等等接口都是可以的,并不是你理解的存只能用誰(shuí)或者讀只能用誰(shuí),關(guān)于兩種使用方法的區(qū)別,手冊(cè)說(shuō)的非常詳盡,自己看吧。