Sie haben Pusher verwendet, also nehme ich an, dass Sie wissen, wie man event verwendet.
Ich empfehle Ihnen Laravel-Echo-Server. Es ist sehr einfach zu bedienen, mit einer eingebauten API.
Hier ist ein neues Beispiel für ein Laravel-Echo-Projekt von Grund auf neu. Nachdem Sie das Projekt eingerichtet haben.
Sie benötigen Predis, wenn Sie es noch nicht installiert haben
composer require predis/predis
redis-server /usr/local/etc/redis.conf
- führen Sie
npm install -g laravel-echo-server
aus - führen Sie
laravel-echo-server init
aus - kommentieren Sie
App\Providers\BroadcastServiceProvider::class
aus inconfig/app.php
- fügen Sie
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/socket.io.js"></script>
hinzu in Ihrer app.blade.php - Sie benötigen einen Socketio-Client, Sie können
npm install --save laravel-echo
ausführen .Falls Sie mit npm oder vue nicht vertraut sind, können Sie einfach diese kompilierte Datei aus meinem github project.compiledjs einbinden -
füge dies zu app.blade.php hinzu
<script> window.Echo = new Echo({ broadcaster: 'socket.io', host: '{{url('/').':6001'}}', }); Echo.private(`App.User.{{Auth::id()}}`) // private channel .listen('NewMessage', (e) => { console.log(e) }); </script>
-
Führen Sie schließlich laravel-echo-server start aus und öffnen Sie Ihr Projekt, Sie werden
sehen[20:53:21] - Lv5OKDAcuSLsK1nBAAAE authenticated for: private- App.User.1 [20:53:21] - Lv5OKDAcuSLsK1nBAAAE joined channel: private-App.User.1
-
Sie können jedes gewünschte Ereignis oder andere Benachrichtigungen anhören
-
Hier ist mein Echo-Beispiel für mein GitHub-Projekt
fügen Sie einen kleinen Code hinzu, damit Sie mit Postman eine Nachricht an einen bestimmten Benutzer senden können. Sie können die Nachricht von der Chrome-Konsole aus sehen. Weitere Details können Sie den Screenshots des Github-Projekts entnehmen