Рубрики
Uncategorized

Создайте свое приложение laravel instant (2) – отправка сообщений и мониторинг

Автор оригинала: David Wong.

4 августа 2019 года 20:16:21 XXM

Следуйте предыдущему блогу: создайте свое приложение laravel instant (I) – инициализация и создание проекта

В прошлом блоге я представил базовую конструкцию проекта, а теперь собираюсь попрактиковаться

(I. отправка сообщения)

1. Создать класс событий

Широковещательный толчок Laravel реализуется через событие. Затем создайте класс событий с помощью команды artisan

php artisan make:event TestEvent

Для того, чтобы соответствовать нашей системе вещания, нам необходимо реализовать, как это

class TestEvent implements ShouldBroadcast

2. Укажите push-канал

Возвращенный объект изменения

public function broadcastOn()
{
        return new Channel('notice');
}

3. Прослушивание сообщений

Вам необходимо установить laravel echo и сокет. Клиент ввода-вывода

npm install --save socket.io-client 
npm install --save laravel-echo

После установки откройте файл/assets/JS/bootstrap. JS и добавьте код, содержащий базовую конструкцию объекта echo

import Echo from 'laravel-echo'

window.io = require('socket.io-client');
window.Echo = new Echo({
    broadcaster: 'socket.io',
    host: window.location.hostname + ':6001'
}); 

После сборки начните прослушивать события канала в нашем JS-коде

PS: не забудьте запустить после изменения запуск prod | NPM запуск dev==

window.Echo.channel('test-event')
    .listen('ExampleEvent', (e) => {
        console.log(e);
    });

4. Результаты тестирования приложения

Мы проверяем, добавляя путь

Route::get('/notice',function(){
    $event = event (New \ app \ events \ testevent ('test notification ');
});

Эффект мониторинга страницы заключается в следующем:

Вышесказанное завершает основную отправку сообщений и мониторинг. Конечно, есть и другие навыки, не проявленные на месте. Заинтересованные студенты могут запросить документы: https://laravel.com/docs/5.6/… Чтобы получить больше знаний и навыков

== Тестовое событие. Полный код PHP выглядит следующим образом:

message = $message;
    }

    /**
     * Get the channels the event should broadcast on.
     *
     * @return \Illuminate\Broadcasting\Channel|array
     */
    public function broadcastOn()
    {
        return new Channel('notice');
    }
}

Оригинал: “https://developpaper.com/build-your-laravel-instant-app-2-message-push-and-monitor/”