Laravel Broadcast / WebSockets: подключать только тех пользователей, которые вошли в систему - PullRequest
0 голосов
/ 30 июня 2019

Я настроил Laravel WebSockets . Мой сайт предоставляет функциональность только в режиме реального времени / WebSockets для пользователей, которые вошли в систему. Поэтому нет необходимости подключать гостей и к моему серверу WebSockets. Как я могу запретить гостям подключаться?

1 Ответ

0 голосов
/ 01 июля 2019

Я советую вам использовать SocketIO, Laravel Echo и Laravel Echo Server.

Получить токен доступа пользователя, сохранить его в файле cookie или веб-хранилище (localStorage или sessionStorage) и внедрить его при создании экземпляра Laravel echo:

let Echo = require('laravel-echo')

window.Echo = new Echo({
        broadcaster: 'socket.io',
        host: window.location.hostname + ':3434'
        auth: {
            headers: {
                 Authorization: 'Bearer ' + AUTH_TOKEN,
            },
        },
    });

Вот ссылки для ваших нужд:

https://laravel.com/docs/5.8/broadcasting#driver-prerequisites https://github.com/tlaverdure/laravel-echo-server

...