Как реализовать websockets в laravel API

#php #laravel #laravel-8 #laravel-websockets

Вопрос:

Я пытался реализовать websockets в laravel 8 API, но все напрасно. Я пытался использовать этот пакет, но всякий раз, когда я пытаюсь подключиться, он возвращает 404 not found .

Мне интересно, существует ли конкретный способ создания и тестирования реализации websockets в laravel. Любая помощь будет с благодарностью оценена

Комментарии:

1. Вы пробовали Pusher с Laravel? pusher.com

2. @zoltalar Pusher хорош, но он не может быть экономически выгодным для моего варианта использования из-за их цены

Ответ №1:

Как вы подключаетесь к своим websockets? Если хост сервера отличается от вашего интерфейса, вы должны настроить это в соединении с websocket.

Если вы используете Laravel Echo, измените точку аутентификации:

 new Echo(
    broadcaster: 'pusher', // The broadcaster you're using
    key: pusherKey, // The key of the broadcaster
    wsHost: localhost, // The host of the websocket server
    wsPort: 6001, // The port of the websocket server
    authEndpoint: http://localhost:8000/broadcasting/auth, // The endpoint for authorization
    disableStats: true, // Disable sending stats to broadcast service
    enabledTransports: ['ws', 'wss'], // The enabled transports (this will only use websockets. if you don't add this, it could fall back to xhr-streaming or polling)
);
 

Комментарии:

1. Привет, @Sjoertjuh спасибо за ответ, но чего я пытаюсь избежать, так это использования laravel echo, поскольку echo, похоже, является пакетом интерфейса, но я внедряю api веб-сокетов на стороне сервера