首页 > 解决方案 > Laravel Echo 在使用任何命令之前打开一个连接

问题描述

我刚开始使用 Laravel Echo(laravel-websocketsecho我想知道这是否是 Echo 库的正常行为?

我打算仅将 websockets 用于管理仪表板,并且为每个来宾用户提供不必要的打开连接可能是一个大问题。

这不仅仅是开放的连接,客户端和服务器之间将发生一系列 ping/pong 消息。我相信对每个公共访问者都有这些请求可能会导致服务器上的网络和资源问题。

我的bootstrap.js文件:

import Echo from 'laravel-echo';

window.Pusher = require('pusher-js');

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: process.env.MIX_PUSHER_APP_KEY,
    cluster: process.env.MIX_PUSHER_APP_CLUSTER,
    wsHost: process.env.MIX_PUSHER_HOST,
    wsPort: Number(process.env.MIX_PUSHER_HOST_PORT),
    forceTLS: false,
    disableStats: true,
    enabledTransports: ['ws', 'wss'],
});

任何人都可以对此有所了解吗?提前致谢!

标签: laravelwebsocketlaravel-echo

解决方案


那么您可以使用 PrivateChannel 或 PresenceChannels 来限制 Auth 用户的访问权限。https://laravel.com/docs/8.x/broadcasting#presence-channels。一旦 Echo 定义。您可以通过 Echo.join() 在管理视图中使用 js 文件...


推荐阅读