问题标签 [laravel-websockets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
112 浏览

javascript - v-for 循环在运行后打印空行

我正在处理 vue 组件文件,我通过 laravel WebSockets 获取数据,现在我想在模板标签的表格中打印所选数据,但我的行在表格中打印为空白,行在增加但数据为空。请让我知道我在哪里弄错了。

0 投票
0 回答
322 浏览

laravel - 尝试在我的 laravel_websockets 仪表板中查看事件时出现 404 错误

我是 laravel-websocket 的新手,我收到了这个错误: Illuminate\Broadcasting\BroadcastException Pusher error: 404 Not Found 当我打开 http://localhost:8000/broadcast 以查看 laravel-websocket 仪表板中创建的事件时。

这是我的配置和代码

测试.php

网页.php

.env 配置

广播.php

如果一切正常,我必须在 laravel-websocket 仪表板中查看 api 消息。

谁能帮帮我?

0 投票
0 回答
44 浏览

php - Pusher api 没有监听 laravel 事件

我在 laravel websockets 中使用不带 laravel-echo 的 pusher sdk 我能够订阅频道但监听事件功能不起作用 下面是我用于前端的代码

在 laravel websockets 管理面板上,这一切都很好 在此处输入图像描述

0 投票
1 回答
430 浏览

laravel - Laravel echo / pusher在接收数据时不发送ping

我正在运行一个laravel websocket并通过 wss 建立连接。

我在服务器上运行命令,命令记录在一个文件中。每行也通过 websocket 发送到前端,以便我查看。每个 laravel-command 都有自己的文件和广播频道。

命令记录器:

在 Vue.js 中,我使用 Echo(它实现了 pusherjs)收听:

我遇到的问题仅在命令发送大量消息以回显时发生。

以正常速率,消息之间有一些暂停,echo 执行乒乓球并且连接仍然接收消息。

在更高的消息速率下,似乎 echo 没有发送乒乓球,我的套接字默默地停止接收数据。在它停止接收后,它开始乒乓球,好像什么都没发生一样。服务器和客户端都没有断开连接。

Websocket 消息(注意它在 205000 处停止,没有错误并恢复乒乓球):

在此处输入图像描述

实际命令输出(在 230000 并且仍在运行):

在此处输入图像描述

如果我刷新页面,我会再次收到消息。

我已经直接更新了websockers:serve命令(vendor/beyondcode/laravel-websockets/src/Console/Commands/StartServer.php)并禁用了pongtracker:

然后我重新启动了 websocket 并再次尝试。这一次,无论我发送消息的速度有多快,echo 都会继续接收消息。

TL;博士:

我的结论是 echo 应该在从服务器接收消息之间进行乒乓球,因为目前它似乎无法这样做,并且 websocket 最终会清理连接而不会断开连接。如何强制 echo 进行乒乓球,或者确保服务器不清理连接而不冒连接失控的风险?

更新 1:

我一直在深入研究该Startserver.php文件并发现了这一点:

这就解释了为什么我停止接收消息,但没有断开连接。它只是取消订阅我正在静默收听的频道(在前端看不到这个)并保持连接活跃。

我还在github(laravel/echo) 上创建了一个问题,因为我确实认为这是不受欢迎的行为。我只是不确定问题出在 echo 还是 pusher js 中。

0 投票
0 回答
53 浏览

javascript - 我的 websocket 有两个连接,一个带有 ?sid 参数的连接一直失败,重试也不起作用,但有时它可以工作

我的应用程序使用socket.io包+laravel-echo包,当它连接时,它会发出两个请求,就像这个截图一样。

在此处输入图像描述

一个不带参数的请求就sid可以了,我的应用可以正常工作。

在此处输入图像描述

但是,带有sid参数请求的那个总是失败,我不知道为什么。

在此处输入图像描述

该请求将重试,但仍然像这样失败。

在此处输入图像描述

有时带有sid参数的请求会起作用,无论成功或失败,我的应用程序都会正常工作。

为什么会这样?

0 投票
0 回答
37 浏览

php - 当客户端位于不同的来源时,Laravel WebSocket 未连接

我正在使用 laravel websockets 并在客户端使用推送器服务,当从同一服务器连接客户端时它正在工作,但是当从不同服务器连接客户端时它不工作这里是我用于客户端连接的推送器 js

0 投票
1 回答
144 浏览

amazon-web-services - Laravel websockt 没有在实时服务器 ubuntu 上连接?

我正在尝试在 ubuntu 服务器上使用 laravel websockt。它在 localhost 上运行良好,但在 ubuntu 服务器上,当我尝试连接时它无法正常工作。

在控制台中我收到此错误

我几乎已经在我的 ec2 入站规则中授予了所有端口权限

在此处输入图像描述

不知道为什么它仍然不起作用任何想法?

0 投票
1 回答
516 浏览

laravel - Laravel-websockets 无法通过 nginx 在 plesk 的 VPS 服务器上运行

我正在使用 laravel-websockets 和 pusher 包在我的应用程序中运行一个简单的聊天功能。我设法使用代客开发环境的 ssl 证书使其在本地工作。现在,我处于开发的最后阶段,我将应用程序放在我的 VPS 服务器上,创建了 ssl 证书,一切正常,但我无法让 websockets 服务器正常工作。我正在使用带有 plesk 的 ubuntu 服务器,并通过 nginx 运行我的应用程序。 目前在控制台中收到此错误

广播.php

引导程序.js

.env(我将在生产中更改推送器凭据)

0 投票
0 回答
18 浏览

ubuntu - 主管使用所有 cpu 电源

我正在使用 laravel-websocket 包进行实时事件。为此,我需要运行php artisan laravel-websocket 我正在通过主管执行的命令,但是当我使用主管时,我必须将我的 ec2 实例从微型增加到小型,这会花费很多。你能解释一下可能是什么原因吗?这是主管配置文件

0 投票
0 回答
483 浏览

laravel-echo - 带有 Pusher 和 laravel-websockets 的 Laravel 广播不发送消息

这是 Laravel 7 的设置,遵循使用laravel-websockets而不是 Pusher的 pusher 驱动程序的安装指南。

'php artisan websockets:serve' 正在运行,并已连接到浏览器中的 Echo 客户端,并且正在愉快地发送 ping / pong 消息。

但是,当我尝试通过触发事件来发送服务器消息时

我没有看到来自 websockets:serve 日志的活动,也没有在线上的消息(在 DevTools 中)。

我可以看到事件被构造,作业被排队并被执行,我可以看到正在调用的 broadcastOn() 方法。

如果我将 BROADCAST_DRIVER 切换到“日志”,我会看到那里记录的消息:

但是,如上所述,将 BROADCAST_DRIVER 设置为“推送器”不会导致进一步的活动。

队列驱动程序设置为“同步”的行为相同,因此不是队列设置。

我唯一的线索是通道身份验证功能没有被调用,但是从文档中并不清楚这是否与发送相关(比如监听身份验证)。

任何日志中都没有错误,没有异常或任何明显错误。

我还能看什么来查看消息在哪里丢失?