问题标签 [laravel-broadcast]
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.
php - Laravel Websockets - 为什么我们仍然需要有效的 Pusher API 密钥
我在我的项目中使用Laravel WebSockets 。
据说 Laravel WebSockets 是推送器的替代品。
但我的问题是
为什么我们仍然需要有效的推送 API 密钥?它仅在我放置有效的推送 API 密钥时才有效。
如果没有推送 API 密钥,我不能完成它吗?
任何人都可以帮助我获得更好的知识吗?
谢谢
php - 如何使用 Laravel 广播实现高速
我正在开发 Laravel 应用程序,我需要实现广播功能。官方文档https://laravel.com/docs/7.x/broadcasting建议了 3 种方式:
- Pusher.com --> 回声
- laravel-websockets --> 回声
- Redis --> Socket.Io --> Echo
到目前为止,我一直尝试仅使用 Pushes.com 解决方案作为最简单的解决方案。在我的睾丸上,这个解决方案以大约 1 秒的延迟向用户浏览器发送消息。但是1秒对我来说太长了。
- Laravel 广播解决方案的正常延迟是多少?
- 哪种解决方案最适合使用?
- 如何在解决方案 2 和 3 之间进行选择?
laravel - 后端不返回时如何避免控制台错误403
如果我这样设置我的频道,我会收到控制台错误 403。
注意:: if ($user->status) is not reg.
如果我这样设置我的频道,一切都会好起来的。
但是当 $user->status 不是 reg 时,我需要设置我的频道,我不想给任何回报。
问题是如果我不给任何回报,我会收到控制台错误 403。
对不起我的英语技能
laravel - 类 App\Http\Middleware\Authenticate:api 在广播中不存在
我在使用广播时遇到 auth:api 守卫问题。
Class App\Http\Middleware\Authenticate:api does not exist
如果我打电话,我会收到错误消息php artisan route:list
。
广播服务提供者.php:
配置/auth.php:
如果我从 BroadcastingServiceProvider 中删除 Broadcast::routes 的中间件,我就不再有问题了。
我auth:api
也在我的路由文件中使用了同样的守卫,这似乎工作正常:
我想也许providers
config/app.php 中数组中的导入是问题所在,但似乎不是这样。有什么想法吗?
laravel - 私人频道授权 - 一对一聊天
我有聊天室,目前是两个用户之间的一对一聊天。
这是未经授权的频道
这样它就可以工作,但我想把它改成这样,这样它就可以检查你是房间里的发送者还是接收者,否则你是不允许的。
这是用户模型中的 canJoinRoom 方法
这样,当我尝试使用用户的方法并检查其他内容时,我得到了广播/身份验证 404 Not found。
也尝试过这种方式,但我仍然得到广播/身份验证 404 Not found。
laravel - 广播频道未在 Laravel 中注册
在身份验证部分,我一直坚持在私人频道上广播。我所做的是,我在 Echo 服务器中制作了自定义 authEndpoint
控制器:
我制作了一个扩展 Illuminate\Broadcasting\Broadcasters\Broadcaster 的自定义广播类,以便我可以覆盖verifyUserCanAccessChannel方法 我的 verifyUserCanAccessChannel 方法:
在这里我已经记录了 $this->channels以从routes/channel.php获取注册的频道, 但结果是空的。这是我的广播服务提供者:
这是我的channel.php:
而且我在 config/app.php 中都取消了注释
这里可能是什么错误。请帮我解决这个问题。先感谢您。
laravel - laravel广播在私人香奈儿广播不工作我使用laravel echo
事件是:
routes/channels.php 是:
在刀片文件中:
广播频道正常工作。但在 PrivateChannel 中不起作用。并且在控制台中没有显示任何错误
我使用 laravel echo 和 pusher
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 设置为“推送器”不会导致进一步的活动。
队列驱动程序设置为“同步”的行为相同,因此不是队列设置。
我唯一的线索是通道身份验证功能没有被调用,但是从文档中并不清楚这是否与发送相关(比如监听身份验证)。
任何日志中都没有错误,没有异常或任何明显错误。
我还能看什么来查看消息在哪里丢失?
laravel - Laravel 广播每次击键
-嘿,我实际上正在创建一个在线考试应用程序,我想添加一个系统,让教师可以使用广播或 laravelecho实时查看学生在文本区域(或输入)中输入的内容。
- 所以我的场景是当学生打字时,如果他按下与学生有关的按钮,老师就可以看到他正在输入的内容。
我实现了所有我需要的应用程序是我可以广播每个按键的方式。
laravel - 无法接收在 Laravel 上广播的事件
我已经苦苦挣扎了一段时间,无法找到一种方法来完成这项工作。我的项目在 Laravel 8 上,我使用的是 Redis 和 laravel-echo-server(因为它似乎没有维护,我也尝试使用手工制作的 express/socket.io 服务器)
问题:当我触发事件时,Redis 和 Laravel Echo Server 收到了它,但我的网页控制台从未收到它。
“事件/发送消息”
“.env”
“欢迎.blade.php”
“laravel-echo-setup.js”
希望可以有人帮帮我
如果您需要更多代码,我在这里!