Laravel Web Socket полный базовый подробный курс. Удаленный(Pusher) и локальный веб сокет серверы

Поделиться
HTML-код
  • Опубликовано: 26 июн 2024
  • Стань спонсором(бусти аккаунт), доступ к собеседованиям:
    boosty.to/laravelcreative
    Мои платные курсы:
    laravelcreative.ru/course
    План развития с нуля до middle+:
    laravelcreative.ru/other/plan
    Группа вк:
    laravelcreative
    - Ссылка для донатов, спонсорства, пожертвований
    yoomoney.ru/to/410011784671592
    www.donationalerts.com/r/lara...
    - 00:00:00 Описание курса
    00:07:30 Обзор, что такое web socket, где используется, какие задачи решает
    00:22:32 Настройка окружения
    00:24:56 Создание страницу, контроллер, роут для страницы сообщений
    00:31:30 Роут, контроллер для добавления сообщений
    00:37:29 Добавление сообщений
    00:40:19 Стилизация и отрисовка сообщений
    00:44:24 Подключение к Pusher web socket серверу
    00:50:28 Отображение сообщений с Web Socket Pusher(бекенд)
    00:57:30 Подписка на веб сокет канал с клиента и отрисовка(vuejs)
    01:04:51 Панель Pusher
    01:07:07 Страница пользователя, роут, контроллер для темы приватных каналов
    01:10:00 Стилизация страницы пользователя и добавление кнопка SendLike
    01:11:41 Добавление функционала SendLike(бекенд)
    01:16:37 Добавляем динамичный канал
    01:21:32 Отрисовка оповещения на клиенте
    01:23:19 Подключаем приватные каналы(private channel web socket)
    01:29:29 Использование джобов с веб сокетами
    01:32:41 Отладка каналов и веб сокет оповещений, как диагностировать в случае проблем
    01:37:11 Подключение локального веб сокет сервера
    01:48:30 Итоги

Комментарии • 74

  • @qwerty-ru8bz
    @qwerty-ru8bz Год назад +11

    Лучший канал на русском про Laravel !!!!!!

  • @user-du5ki5fi9p
    @user-du5ki5fi9p 4 месяца назад

    Слежу за каналом несколько лет. Автор Великий молодец! Росту как программист при поддержке и этого канала. Инфа без воды кратко, структурированно от 0 к 1. Донат отправлял, планирую приобрести курс чего и вам рекомендую! Поддержим Вики Ларавел в Ютюбном формате! Большое спасибо за такую работу!

  • @vugarkhalil
    @vugarkhalil 8 месяцев назад

    Шикарная подача❤

  • @denniskatilov5891
    @denniskatilov5891 Год назад +1

    Очень классно! Спасибо.

  • @gru8299
    @gru8299 Год назад +2

    Огромное спасибо!!! 👍👏👋

  • @user-os8vw7os1y
    @user-os8vw7os1y Год назад +1

    Большое спасибо за видеоурок

  • @devKenny
    @devKenny 10 месяцев назад +1

    Спасибо, понятно объяснил, кланяюсь)

  • @SARDARru
    @SARDARru 6 месяцев назад

    Ценнейший ролик, который я надеюсь найду когда буду внедрять что-то с вебсоккетами. Пока просто лайк и коментарий за ваш труд! Очень ценим!

  • @gisen100ify
    @gisen100ify 6 месяцев назад

    Спасибо за этот урок!

  • @edigekozykhan
    @edigekozykhan Год назад +6

    Спасибо большое как раз искал учить эту тему🔥🔥🔥👍🏻👍🏻👍🏻👍🏻

  • @valeraaligator999
    @valeraaligator999 Год назад +6

    Годнота подъехала!

  • @user-xf4du6cg7b
    @user-xf4du6cg7b Год назад +2

    Круто, спасибо)

  • @antohagobet4451
    @antohagobet4451 Год назад

    Вот это топчик, годный урок

  • @gulistanmadetova1158
    @gulistanmadetova1158 2 месяца назад

    Спасиба подскаска версия ❤

  • @ddrdeveloper
    @ddrdeveloper Год назад +1

    ты крут!

  • @Id_user
    @Id_user Год назад +1

    Достойно!

  • @Solomanaru
    @Solomanaru 9 месяцев назад

    Спасибо, твои уроки проще воспринимать чем других авторов. Вопрос, многие уроки делали про Livewire, а у тебя не слова про него, планируешь про него что ни будь добавить, с удовольствием бы посмотрел твой подход.

  • @sashasss7114
    @sashasss7114 Год назад

    Спасибо за курс. Можете ещё сделать дополнение для production версии на HTTPS?

  • @ArtDenis1993
    @ArtDenis1993 11 месяцев назад

    Спасибо за курс, все круто.
    Единственный вопрос, если использовать локальный веб сокет сервер, будет ли он работать на обычных shared хостингах?

  • @KarSlon1
    @KarSlon1 3 месяца назад

    Ctrl+R "ребятушки" "пацанчики". А так всё отлично, заработало, спасибо!

  • @NillosT
    @NillosT Год назад +4

    Как всегда качественно! Есть просьба и идея для будущего видео: файловая система S3 (Simple Storage Service) Нигде на Ютюбе нет урока по S3! Только Амазон, который не актуален в нашей стране. Пробовал подключить Selectel, но не могу разобраться в документации. Вроде всё просто, но не работает.

  • @igorsss5810
    @igorsss5810 4 месяца назад

    Очередной мини-курс от LC в копилку знаний

  • @bodrosh
    @bodrosh 9 месяцев назад +2

    Спасибо за уроки) А зачем прокидывать id авторизованного пользователя из vue (from_id) для лайка, если можно в самом методе его получить через Auth::id() - так же проще и надежнее? Есть какие-то преимущества или можно и так и так?

  • @user-vf7pc4tn9z
    @user-vf7pc4tn9z Год назад

    Архитектуру больших преложений с Vue Nuxt Laravel покажешь? а то ты тему Services по верхам затронул вообще а во вью и этого нету

  • @eugenezhukov1684
    @eugenezhukov1684 4 месяца назад

    Добрый день. Интересно, глюк на 49:10 (import.meta.env) если случается то как фиксить?

  • @user-mx2hz8uv7n
    @user-mx2hz8uv7n Год назад +2

    Не совсем понял почему работаем через axios если можно через inertia

  • @user-dc6md9wh8y
    @user-dc6md9wh8y Год назад +4

    На 1:01:17, когда отправляю сообщение выдаёт ошибку "Failed to load resource: the server responded with a status of 500 (Internal Server Error)"

    • @user-be3xu9lr3q
      @user-be3xu9lr3q 10 месяцев назад

      получилось решить?

    • @roman_zabigaliuk
      @roman_zabigaliuk 7 месяцев назад

      Если ошибка 500, надо смотреть логи, в каком месте бэкенд падает.

    • @user-ib9py6bv4t
      @user-ib9py6bv4t 4 месяца назад

      В ресурсах используй $this-> для обращения к свойствам модели.

  • @doh3812
    @doh3812 2 месяца назад

    Есть еще laravel reverb, почему бы его не использовать?

  • @rosts_26
    @rosts_26 9 месяцев назад

    Блять.... Плакал 1.5 часа из-за точки в listen(), пока не наткнулся на этот видос... Спасибо тебе большое, автор! Такого морального опустошения я давно не испытывал. Кто тот мегаразум, который придумал ставить точку в имени события на прослушивание канала WS??? Если кто знает для чего нужно ставить точку в названии события, объясните пожалуйста...

    • @laravelcreative
      @laravelcreative  9 месяцев назад +2

      Благодарю!:) На этом месте попадалось множество храбрых разработчиков, возможно точка там для того, чтобы они навсегда запоминали вебсокеты:)

    • @user-ib9py6bv4t
      @user-ib9py6bv4t 4 месяца назад

      Точка нужна чтобы пространство имен не подтягивалось

  • @user-tj8wu1wy1p
    @user-tj8wu1wy1p Год назад +2

    а чем отличается данный курс от вашего платного?

    • @laravelcreative
      @laravelcreative  Год назад +1

      В это курсе база, а в платном уже сложный функционал:)

  • @vxarlanchuk
    @vxarlanchuk 8 месяцев назад

    Ребятушки, подписываемся, чтобы не выливалось много слез...

  • @user-kd9gj3vz7p
    @user-kd9gj3vz7p Год назад

    Что делать если 3 месяца назад покупал платный курс но чет на половине пути забросил прохождение курса, щас решил продолжить а в личном кабинете пишут что нет не одного купленного курса. Могу предоставить всё доказательства покупки

    • @laravelcreative
      @laravelcreative  Год назад +1

      Привет. Напиши на почту, разберемся. Это баг на вервисе:)

    • @laravelcreative
      @laravelcreative  Год назад +1

      Скрины мне скинь на почту, я им передам.

    • @user-kd9gj3vz7p
      @user-kd9gj3vz7p Год назад +1

      @@laravelcreative всё я разобрался, забыл что у меня 2 аккаунта на сайте антитренинги

  • @sergi4827
    @sergi4827 Год назад +3

    почему VITE запускаем а не npm run dev кто-то расшифрует ??

    • @ArtDenis1993
      @ArtDenis1993 11 месяцев назад +1

      На новых версиях laravel теперь vite, так как vite вместо webpach-а по умолчанию

    • @ZA-Pobedu-RF
      @ZA-Pobedu-RF 4 месяца назад +1

      У меня vite команда не работает в новой версии, работает через npm run dev

  • @tyaplyap4842
    @tyaplyap4842 Год назад +2

    как найти платные курсы?

    • @laravelcreative
      @laravelcreative  Год назад +3

      В описании к ролику есть вся необходимая информация:)

  • @sodaler437
    @sodaler437 Год назад +4

    Если будет 500 ошибка с SSL, помогли следующие действия:
    1) Установить cacert.pem
    2) В php.ini указать путь к этому файлу в переменной curl.cainfo

    • @user-ly7zn9fr6i
      @user-ly7zn9fr6i 10 месяцев назад

      Браво, Дружище. Огромнейшее спасибо за подсказку. Я тут вёдра слёз пролил... СПАСИБИЩЕ !!!

    • @r1f41
      @r1f41 7 месяцев назад

      лучший )

    • @user-to4cs6ji3w
      @user-to4cs6ji3w 5 месяцев назад

      Благодарю

  • @qoonmax
    @qoonmax 8 месяцев назад

    Объясните пожалуйста почему получать свои же сообщения через вебсокет плохо?

    • @qoonmax
      @qoonmax 8 месяцев назад

      На ум приходит только проблема с тем что пользователь будет спамить сообщениями если вебсокет отвалится и он не увидит свое сообщение.

    • @laravelcreative
      @laravelcreative  8 месяцев назад

      Потому что это делается средствами клиента js) Если не отключить сообщение "всем", то будут дубли. Но, если вопрос касается общей концепции, то реализация клиентом более надежна, чем ожидание от веб сокет сервера с прохождением всех слоев до клиента.

    • @qoonmax
      @qoonmax 8 месяцев назад

      @@laravelcreative Но если мы откажемся обрабатывать http ответ и вставлять его в массив, а отдадим все на откуп вебсокетам, то сможем избежать проблемы когда 2 вкладки показывают разные сообщения.

  • @thera1d500
    @thera1d500 Год назад

    камент для продвижения

  • @roman_zabigaliuk
    @roman_zabigaliuk 6 месяцев назад

    Спасибо огромное, учитель!
    Публичный канал запустился без проблем, но с приватным какая-то беда. После подключения пытаюсь подписаться, но вижу сообщение от сокета:
    {"event":"pusher:error","data":{"code":null,"message":"Auth info required to subscribe to private-CrudUpdatedChannel.1.leads"}},
    а функция авторизации так и не получает управление. Точка останова в ней не срабатывает.
    Broadcast::channel('CrudUpdatedChannel.{team_id}.{table}', function ($user, $team_id, $table) {
    return \App\Http\Controllers\Api\AuthController::userHasAccessToTeam($user, $team_id);
    });
    Уже сломал голову себе и Чату GPT, Гугл вообще ничего не знает, вся надежда на вас, мастер. Молю, помогите!

  • @DArtanianS_83
    @DArtanianS_83 9 месяцев назад

    Для установки Laravel Websocket на Laravel v 10.22 помогла команда composer require beyondcode/laravel-websockets -w