问题标签 [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.
javascript - v-for 循环在运行后打印空行
我正在处理 vue 组件文件,我通过 laravel WebSockets 获取数据,现在我想在模板标签的表格中打印所选数据,但我的行在表格中打印为空白,行在增加但数据为空。请让我知道我在哪里弄错了。
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 消息。
谁能帮帮我?
php - Pusher api 没有监听 laravel 事件
我在 laravel websockets 中使用不带 laravel-echo 的 pusher sdk 我能够订阅频道但监听事件功能不起作用 下面是我用于前端的代码
在 laravel websockets 管理面板上,这一切都很好 在此处输入图像描述
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 中。
php - 当客户端位于不同的来源时,Laravel WebSocket 未连接
我正在使用 laravel websockets 并在客户端使用推送器服务,当从同一服务器连接客户端时它正在工作,但是当从不同服务器连接客户端时它不工作这里是我用于客户端连接的推送器 js
laravel - Laravel-websockets 无法通过 nginx 在 plesk 的 VPS 服务器上运行
我正在使用 laravel-websockets 和 pusher 包在我的应用程序中运行一个简单的聊天功能。我设法使用代客开发环境的 ssl 证书使其在本地工作。现在,我处于开发的最后阶段,我将应用程序放在我的 VPS 服务器上,创建了 ssl 证书,一切正常,但我无法让 websockets 服务器正常工作。我正在使用带有 plesk 的 ubuntu 服务器,并通过 nginx 运行我的应用程序。 目前在控制台中收到此错误
广播.php
引导程序.js
.env(我将在生产中更改推送器凭据)
ubuntu - 主管使用所有 cpu 电源
我正在使用 laravel-websocket 包进行实时事件。为此,我需要运行php artisan laravel-websocket
我正在通过主管执行的命令,但是当我使用主管时,我必须将我的 ec2 实例从微型增加到小型,这会花费很多。你能解释一下可能是什么原因吗?这是主管配置文件
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 设置为“推送器”不会导致进一步的活动。
队列驱动程序设置为“同步”的行为相同,因此不是队列设置。
我唯一的线索是通道身份验证功能没有被调用,但是从文档中并不清楚这是否与发送相关(比如监听身份验证)。
任何日志中都没有错误,没有异常或任何明显错误。
我还能看什么来查看消息在哪里丢失?