问题标签 [laravel-echo]

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 回答
1097 浏览

laravel - Laravel echo 收不到广播消息

这里是事件

这是前端代码

node.js 代码

这是我在 laravel 应用程序中触发 Event 时在 chrome 开发工具中看到的内容 在此处输入图像描述

所以 websocket 正在工作,但没有调用任何处理程序。

当我取消注释 broadcastAs 功能时,什么都没有改变。

当我将频道重命名为test-channel后端和前端时 - 没有任何变化。

0 投票
1 回答
1216 浏览

laravel - 使用 socket.io 和 Laravel Echo 时如何保护私有通道?

这是我的server.js文件:

还有一个简单的事件:

客户端连接到 socket.io:

然后监听事件(它在 Blade 模板中):

问题是:身份验证未处理,任何用户都可以订阅这些频道。

以下是来自 Chrome 开发者控制台 (WebSocket) 的示例事件:

也没有/broadcast/authURL,但BroadcastServiceProvider有一个调用Broadcast::routes();,当浏览器加载时,没有调用/broadcast/auth发生。

0 投票
1 回答
982 浏览

pusher - Laravel 5.4 广播:Pusher->Error->WebSocketError

我刚开始使用带有 Pusher 和 Echo 的广播。我的问题是我遇到了一个错误,我找不到解决方法。错误消息看起来很直截了当,但我不知道应该去哪里摆脱它。

我的 laravel 是从 Laravel 5.3 升级而来的。我取消了注释App/Providers/BroadcastServiceProvider::class into config.php。我创建了一个活动并设置了私人频道。return new PrivateChannel('dealer.'$this->client->dealer_id); 我将新频道添加到routes/channels.php

我将此添加到 bootstrap.js

我还将所有内容添加到 .env 文件中。最后,我在 applayout.blade.php 末尾的脚本中添加了频道

当我加载页面时,这是我从控制台得到的错误:

我错过了什么/做错了什么?

0 投票
1 回答
975 浏览

laravel - Laravel mix 在加载后会破坏每个 jquery 插件

一般来说,我对 laravel mix 和 npm 完全陌生,所以我在这里完全不知所措。

我正在使用 jquery 插件,例如:https ://github.com/noraesae/perfect-scrollbar

现在,我安装了 laravel mix,因为我需要 laravel echo。得到了它的工作和运行,但从那时起jquery插件没有加载,我得到的是:

我不知道,这可能是因为 jquery 现在是异步加载的,并且 Mix 会覆盖我设置的 /div> 方式?但是,我注意到我也许可以通过 npm 安装这个插件,因为文档来自:

我做到了,它安装了,但我现在怎么可能包含它,以便 laravel mix 也加载它?在过去的 6 个小时里,我一直在寻找一种方法,但我就是不明白该怎么做。任何帮助将不胜感激!

0 投票
2 回答
3728 浏览

laravel - Laravel 回显服务器客户端未收到事件

我有一个使用这个包(https://github.com/tlaverdure/laravel-echo-server)的小型 Laravel Echo 服务器设置。我有以下设置:

.

.

.

.

之后我运行:

/notify路线被击中时,我触发事件。

我可以看到服务器已收到事件并且它没有显示在队列中。

终端输出

0 投票
2 回答
1517 浏览

laravel-5 - 通过 websocket 授权 laravel 护照

我有一个私人频道。只有当我在现场进行身份验证时,我才能使用它。但如果是 laravel 护照,我不知道它应该如何工作。默认情况下,我需要的所有内容都包含在 cookie 中。我有的:

Broadcast::routes(['middleware' => ['api']]);没有效果。

如何通过 laravel 护照对用户进行身份验证,因为它会连接到私有通道 websocket?

0 投票
1 回答
829 浏览

laravel - Laravel Echo 加入私人频道`.here()`

我加入了一个私人频道:

我想使用 .here() 状态调用来让一组用户更新当前在线的用户。

我尝试了以下方法:

但这没有用......

控制台中的错误是: Echo.private(...).here is not a function

0 投票
0 回答
1049 浏览

php - 在 Laravel 中将数据传递给广播授权回调

我是 Laravel 广播的新手,目前我使用的是 5.4。当其他人创建新帖子时,我想根据他们的兴趣更新包含相关帖子的帐户仪表板,我正在使用私人频道。我成功地在当前登录的用户仪表板中广播了另一个用户发布的每个新帖子,我需要检查新帖子是否相关,如果不相关则广播,不要。

我想我可以通过过滤授权事件来实现,在BroadcastServiceProvider我写的里面。

我已经阅读了我们可以将数据与通道名称一起传递的文档,例如

但是这种方法也必须在 laravel Echo 中传递新的帖子 ID

我该如何解决这个问题,我想保留我的频道名称discovery.post,我只想发送给有相关兴趣的用户,我需要 Post 实例来检查登录用户是否对这篇文章感兴趣。

在否决我之前让我知道我的问题是否不清楚。谢谢你。

0 投票
2 回答
1491 浏览

node.js - 获取 https://mydomain.server:6001/socket.io/socket.io.js 网络::ERR_CONNECTION_REFUSED

我第一次尝试使用 socket.io。我正在使用 Laravel 5.4、Laravel Echo 和NodeJs 服务器通过 Socket.io 进行 Laravel Echo 广播。.

我设法让它在我的本地工作,因为它应该工作。但是在服务器上我得到一个错误

我之前确实运行过服务器。我写正确的地址。 在此处输入图像描述

可能是浏览器无法访问该端口或其他什么?

我也尝试使用命令访问该文件 curl -X GET https://mydomain.server:6001/socket.io/socket.io.js

但是得到了 curl: (35) gnutls_handshake() failed: The TLS connection was non-properly terminated

0 投票
1 回答
1444 浏览

redis - laravel 回显服务器,redis

我有远程连接的问题。

我的虚拟主机是:redis.test

我在刀片文件中添加了这个:

.env 文件

回声配置

laravel-exho-server.json

当我尝试使用本地连接(2 个浏览器 - 同一台电脑)进行广播时,它可以工作,但是当我尝试从局域网(192.168.1.50)上的其他电脑发送“消息”时出现此错误

我该如何解决这个问题?