用socket 在客户端和 服务器之间 进行交互。onConnect的时候,向客户端发送消息,可以收到。
但是,当onMessage 的时候 ,使用同样的方法,客户端收不到消息。
虽然客户端收不到服务器消息,但是服务器可以收到客户端发送过来的消息。
$data_arr = [123, 0, 0, 0, 0, 93, 238, 85, 249, 0, 139, 0, 5, 1, 1, 0, 0, 2, 168, 123];
//-把数组转成字符串发送给客户端。
$message_str = self::$received_data-getStr($data_arr);
Events::logging(__FUNCTION__,__LINE__,"client_connect:($client_id,$message_str)");
Gateway::sendToClient($client_id, $message_str);
发之前记录下客户端是否在线,Gateway::isOnline($client_id),连接断了不在线就收不到。或者根本没运行到
Gateway::sendToClient($client_id, $message_str);
也有可能。确诊在线的。
可能性很多,先检测是否是同一个client_id,然后检测是否在线,也不排除没有调用sendToClient,接着检测缓冲区是否满了!
客户端肯定在线。是不是跟 businessworker 为 none 有关。
BusinessWorker本身不监听!
好的。谢谢。
登录的时候收到了,其他返回的消息全都收不到。奇怪了啊。。 大佬们有知道 的吗?请赐教。。
没准客户端有问题
问题已经查明,服务器发送到客户端了。客户端做了拦截。谢谢。大佬们的指点。