问题标签 [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 回答
13390 浏览

laravel - Laravel Echo - default.a.channel 不是一个函数

我正在尝试使用推送器设置 Laravel Echo,以实现实时通知。

首先,我安装了 Laravel Echo 和 Pusher:

在此之后, bootstrap.js 我取消了代码的注释(如指南所说):

我已经运行gulp,现在当我访问该页面时,我收到此错误:

0 投票
1 回答
1702 浏览

php - 事件广播:Laravel Echo 接收广播失败

我不能让 laravel Echo 的前部与 pusher 一起工作。在我的app.js

gulp然后,我用(一切正常)构建我的 JS 。然后我运行本地网站的随机页面(使用 Valet),打开 Web 控制台并输入:

然后我连接到 pusher 并发送一个事件。

推送界面

我的本地网站上没有任何附加内容。我的控制台中没有警报,没有错误或警告,我什么也看不到。这是推送器的调试返回:

在此处输入图像描述

我不知道该怎么做才能使它工作,我想我已经仔细阅读了文档,但也许我错过了一些东西。

0 投票
1 回答
1655 浏览

laravel - laravel echo 没有收到广播

我正在尝试使用 Vue 2 和laravel-echo-server通过 Laravel Echo 接收广播事件,但它不起作用。我也将 laravel-echo-server 设置为 dev 模式,可以看到我进入频道,但同时离开?如果这是问题所在,我该如何阻止这种情况发生并留在频道中?我还可以看到广播正在被触发,因为我正在运行php artisan queue:work redis并且每次发送事件请求时我都会收到Processed: Illuminate\Broadcasting\BroadcastEvent,所以我知道这也有效。为什么这行不通?我真的要疯了。

这是我的 bootstrap.js:

我的 app.js:

我的活动:

最后,我的 laravel-echo-server.json:

我在任何地方都没有收到任何错误,而且似乎我的事件正在被触发和处理,但 Echo 只是没有收到该事件。如前所述,每次触发事件时,我都会从控制台(laravel-echo-server 终端选项卡)获取此信息:

0 投票
1 回答
1469 浏览

laravel - 使用 Pusher 和 Laravel Echo 广播

我正在阅读本教程介绍 Laravel Echo。广播的事情正在完善。每当我执行命令时php artisan chat:message "something"。事件被触发并将数据存储在数据库中。但是继续使用 Laravel Echo。我尝试了很多,但我无处可去。我已将 Echo 放入其中,/js/app.js但在文档中提到了/js/bootstrap.js. 由于我正在关注本教程,因此我将它放在/js/app.jsEcho 中,不会在日志中显示数据。我正在使用ubuntu.

测试事件:

发送聊天命令代码:

Laravel 回声:

每当我从推送者发送事件时,还有一件事。Pusher 能够正确发送。

0 投票
1 回答
1988 浏览

php - 如何在没有 laravel 框架和 npm 的情况下使用 laravel echo

有什么方法可以在没有 Laravel 框架和 NPM 的情况下使用 Laravel-echo 库?只需使用<script>标签并将库添加到我的项目中。

0 投票
2 回答
3558 浏览

laravel - Laravel 广播不向推送者发送事件

我已经将 Laravel 设置为使用推送器为 Laravel Echo 发送事件,但是我从工匠控制台触发的事件没有到达推送器。我从推送调试控制台触发的事件工作正常,所以前端部分没问题。流浪虚拟机会干扰它吗?

我的 .env 文件

我的广播.php

事件:

该事件是从观察模型事件的观察者类触发的created

观察者注册在AppServiceProvider

当我运行创建新消息的控制台命令时,终端会显示:

注意:大多数名称都是机密的,所以我使用了事件名称、频道等占位符,但我希望相关信息在那里。

谢谢!

0 投票
5 回答
12618 浏览

laravel - Laravel 事件未广播

我正在为应用程序开发聊天/消息功能。当用户发送消息时,我希望触发并广播特定事件。然后我希望 Laravel Echo 通过 Laravel Echo 在事件的广播频道上收听事件,使用pusher然后,我希望 Laravel Echo 使用驱动程序

我希望 Laravel Echo 实现位于 Vue 组件中并检索通过事件广播的数据。目前,我无法将事件广播到私人频道或只是一个频道。

这是我所做的:

1) 将配置添加到.env.

2)添加配置bootstrap.js

3) 添加了 auth check in App\Providers\BroadcastServiceProvider(如果用户现在登录则返回 true):

4) 添加App\Providers\BroadcastServiceProvider::class,App/config/app.php.

5) 创建了 Event App\Events\UserSentMessage,它在一个PrivateChannel命名的chat. 我也尝试过广播到Channel. 我检查并通过调用event()控制器中的帮助程序触发了事件,它似乎没有被广播。我也尝试过使用broadcast提到的控制器中的方法。

6)mounted在有效的 Vue 组件中的 Vue 生命周期钩子中添加了以下内容(组件正在按预期呈现数据等,只是不适用于 Laravel Echo atm):

也试过:

Vue 组件正在成功订阅指定的频道。推送器调试控制台识别出它正在被订阅,但事件在触发时永远不会被广播。

似乎是广播事件存在问题。我也尝试过使用broadcast()助手,而不是event()助手。

此外,当通过 Laravel Echo 订阅活动时Echo.private()。它似乎在频道名称前private加上private-chat.

0 投票
1 回答
6289 浏览

laravel - Laravel Echo 没有收到 Pusher 事件

我在使用 Laravel Echo 收听 Pusher 频道时遇到问题。我无法在浏览器中得到任何响应(没有控制台日志)。

在我的 bootstrap.js 中,我得到了。

我使用浏览器控制台并输入:

我可以从 Pusher 调试控制台看到

  1. 连接我的应用程序
  2. 订阅我的频道
  3. 占用我的频道

然后我使用 Pusher 调试控制台发送默认事件:

但是,我的浏览器控制台中没有任何输出

如果我在浏览器控制台中进一步输入:

我可以从 Pusher 调试控制台看到

  1. 取消订阅我的频道
  2. 已腾空我的频道

如何让 Laravel Echo 收听 Pusher 事件?

0 投票
1 回答
2168 浏览

laravel - Laravel Echo 无法订阅 Pusher 私人频道

我无法在私人频道中收听活动。但是,我可以收听公共频道。

问题

这有效:

我可以在 Pusher Debug Console 中看到三个连续的事件:

  1. 联系
  2. 已订阅
  3. 占据

另外,如果我发送Channel: Foo.Bar; Event: App\Events\MyEvent,我可以在浏览器控制台中看到输出。

但是,这不起作用:

我在 Pusher 调试控制台中看不到订阅。显然,如果我发送Channel: private-Foo.Bar; Event: App\Events\MyEvent,我在浏览器控制台中看不到输出。

我做了什么

  1. Broadcast::routes();boot()方法中添加BroadcastServiceProvider
  2. Broadcast::channel('Foo.Bar', function ($user, $FooBarId) {return true;});boot()方法中添加BroadcastServiceProvider

  3. 与主管一起工作的队列

  4. 正确config\broadcasting设置应用程序、密钥、机密、驱动程序、集群、加密。(我可以将事件从我的应用程序发送到 Pusher)

旁注

我可以使用我的应用发送和收听公共事件。只有当频道变为私有时,我才能收听(我的应用程序可以将私有频道上的事件发送到 Pusher)。

我怀疑它可能与身份验证有关,因为Broadcast::channel('Foo.Bar', callback)BroadcastServiceProvider没有被执行。

我在这里想念什么?

0 投票
3 回答
9325 浏览

laravel - Laravel 与 socket.io 的回声

我想在 javascript 端监听服务器端事件。我为此找到了这个包:

https://github.com/tlaverdure/laravel-echo-server

如果这么多次,我已经阅读了所有内容:

https://laravel.com/docs/5.3/events

https://laravel.com/docs/5.3/broadcasting

https://laravel.com/docs/5.3/notifications

到目前为止,我已经这样做了:

控制器动作:

“NewVote”事件类:

Javascript:

laravel-echo-server.json

此命令已在运行:

当我触发事件时,我期待控制台按摩。但我没有在控制台上得到任何东西。

让我知道是否需要任何其他信息。

注意:我的 socket.io 服务器运行成功,没有任何错误。

谢谢,

帕思·沃拉