关于 GatewayWorker从nginx设置的header里获取客户端ip问题

小小子

具体在图里有说明

2181 1 0
1个回答

小小子

解决了,感谢群里的“天马流星拳”提醒,问题如下:

start_gateway.php里设置了,onWebSocketConnect事件

Events.php就不能有onConnect事件,不然$_SESSION,就会被清掉,不知是不是BUG,还是本身就这样的

  • xiuwang 2020-06-04

    Events::onConnect逻辑上在onWebSocketConnect执行前执行,所以Events::onConnect无法通过 $_SESSION 获得到你设置的ip。onMessage onClose里才能获得,我觉得是这个问题

  • 小小子 2020-06-08

    具体在这里,你没理解我的意思
    http://doc3.workerman.net/640187

  • 小小子 2020-06-08

    在start_gateway.php的【onWebSocketConnect 】事件里已经取到了,放到$_SESSION
    然后到了Events.php的onConnect事件,整个$_SESSION都被清空了

年代过于久远,无法发表回答
🔝