laravel -вебсокеты подключаются к каналам без laravel -эха - PullRequest
0 голосов
/ 09 июля 2020

У меня есть сервер веб-сокетов, реализованный с помощью пакета laravel -websockets , который транслирует данные по некоторым частным каналам. На данный момент сервер не поддерживает двустороннюю связь. Я хочу сделать этот publi c, чтобы любой мог подключиться к этому веб-сокету с помощью токена аутентификации. Но я не могу найти в этом ничего полезного.

В настоящее время я использую laravel -echo и pusher- js для подключения из отдельного приложения, которое отлично работает. Но что, если кто-то не хочет использовать эти пакеты, т.е. какова будет реализация nodejs для подключения к этому сокету.

Для справки вот моя реализация laravel-echo для подключения к этому сокету.

import Echo from 'laravel-echo';

window.Pusher = require('pusher-js');
window.Echo = new Echo({
    broadcaster: 'pusher',
    key: '{appkey}',
    wsHost: '{sockethosturl}',
    wsPort: 6001,
    forceTLS: false,
    authEndpoint: '{auth endpoint on socket server}',
    disableStats: true,
    auth: {
        headers: {
            'Auth-Token': '{ random auth token }',
        }
    }
});

А затем я подписываюсь на каналы, используя эту

Echo.private('private-channel-1')
    .listen('.update', (event) => {
         console.log("Found event");
         console.log(event);
     });

Ищу способ перевести это в socket-io или любую другую библиотеку на стороне клиента websocket.

...