急求大佬指点啊,现在卡在这一步了 研究了一下午了都获取不到bindUid里面绑定的uid
下图是在onClose里面获取
下图是输出内容
自带的getSession 存取方法也试了。都拿不到绑定的uid
首先onClose()里是不能使用 GateWay::getSession()方法的,看你代码逻辑和bindUid()也没啥关系呢,你的问题是获取不到对应的session值吧, 不管怎样,这里使用$_SESSION操作才是正确姿势, 你session赋值的操作是在什么地方进行的? 最简单的排除办法就是: 在图session赋值的后面打印$_SESSION的值先看看有没有写成功。
脑子忽然转了个圈,发现好像你们说的session存值是用的GateWay::setSession() 或者GateWay::updateSession()来存的把,然后取值的时候是用$_SESSION取的吧。我试下
哈哈哈。果然是这样,谢谢老哥。现在可以拿到数据了
老哥。谢谢你的回复 不过你说的bindUid我搜索出来几个,在里面都试了没用,下图
我用的是gateway加GatewayClient bindUid方法是在这里调用的,然后写的$_SESSION存值 在这个控制器里面打印$_SESSION是有数据的,
但是在events的onClose方法里面使用$_SESSION取值 就啥也没有
你问题虽然解决了,但是我认为你并没有理解正确,我再啰嗦下也许有助于你后续类似问题的解决: 1、补充的截图代码看上去是web应用业务端,lxd_did()方法里的那个$_SESSION要么是php-fpm的,要么是apachehandler的,不管怎样肯定不是gatewayworker的$_SESSION,这两个是完全不同的东西,换句话:你这个地方必须使用 gateway的setSession()接口远程操作; 2、保存和读取session使用$_SESSION或者 setSession()、updateSession()、getSession()等等接口都是可以的,并不是你理解的存只能用谁或者读只能用谁,关于两种使用方法的区别,手册说的非常详尽,自己看吧。
谢谢,前两天住院没上来看,刚看到,谢谢哥指点
拿bindUid里面绑定的uid 可以逆推 根据客户端id取uid呀
首先onClose()里是不能使用 GateWay::getSession()方法的,看你代码逻辑和bindUid()也没啥关系呢,你的问题是获取不到对应的session值吧, 不管怎样,这里使用$_SESSION操作才是正确姿势, 你session赋值的操作是在什么地方进行的? 最简单的排除办法就是: 在图session赋值的后面打印$_SESSION的值先看看有没有写成功。
脑子忽然转了个圈,发现好像你们说的session存值是用的GateWay::setSession() 或者GateWay::updateSession()来存的把,然后取值的时候是用$_SESSION取的吧。我试下
哈哈哈。果然是这样,谢谢老哥。现在可以拿到数据了
老哥。谢谢你的回复
不过你说的bindUid我搜索出来几个,在里面都试了没用,下图
我用的是gateway加GatewayClient
bindUid方法是在这里调用的,然后写的$_SESSION存值
在这个控制器里面打印$_SESSION是有数据的,
但是在events的onClose方法里面使用$_SESSION取值 就啥也没有
你问题虽然解决了,但是我认为你并没有理解正确,我再啰嗦下也许有助于你后续类似问题的解决:
1、补充的截图代码看上去是web应用业务端,lxd_did()方法里的那个$_SESSION要么是php-fpm的,要么是apachehandler的,不管怎样肯定不是gatewayworker的$_SESSION,这两个是完全不同的东西,换句话:你这个地方必须使用 gateway的setSession()接口远程操作;
2、保存和读取session使用$_SESSION或者 setSession()、updateSession()、getSession()等等接口都是可以的,并不是你理解的存只能用谁或者读只能用谁,关于两种使用方法的区别,手册说的非常详尽,自己看吧。
谢谢,前两天住院没上来看,刚看到,谢谢哥指点
拿bindUid里面绑定的uid 可以逆推 根据客户端id取uid呀