尝试在laravel上使用推送程序创建随机聊天用户。当我尝试广播“会话”(表示连接)时,它返回到我无法加载资源:服务器的状态为500(内部服务器错误),但错误仅针对创建该用户的用户出现会议。我试图解释它是如何工作的。
我使用Vue JS和Laravel。当用户单击某个类别中的“开始聊天”时,所有操作均开始。之后我检查,在chatrequests表的此聊天类别中是否已经有某人的聊天请求创建。如果是,此用户使用会话表中的数据“ id”,“ user1_id”,“ user2_id”为其创建“会话”,并为他们启动聊天窗口。(创建聊天请求的用户等待每第二个请求的连接到会话表中,以检查是否存在其他用户创建的会话)。
因此,完成所有这些操作后,我将会话表中的数据和chatrequests表中的chatrequest行删除了。
当我尝试通过Pusher广播以下会话时出现问题:$ session,$ session_by:broadcast(new ConnectionEvent($modifiedConnection, $connection_by));
因此,我发送给Pusher的数据是:
'id' => $this->id,
'users' => [$this->user1_id, $this->user2_id]
'session_by => auth()->id() (because this function always called by the person who create the session)
在此之后,我得到500并出现错误:
message: "Illegal offset type in isset or empty", exception: "ErrorException",… "ErrorException" "/Users/jsk89/Sites/chat/vendor/laravel/framework/src/Illuminate/Queue/QueueManager.php" line 137. message "Illegal offset type in isset or empty"
重要的一点:所有成功保存在数据库中的数据和错误仅对创建会话的用户显示。推杆保持沉默。
PS:推送程序设置正确,因为已成功将项目的连接用户的存在事件广播出去。
我在互联网上找不到我的问题。也许有人知道如何解决此问题。充满希望...