J'ai récemment configuré mon application Laravel et configuré Echo pour recevoir des notifications poussées. Malheureusement, la fonction de rappel n'est pas déclenchée, même si l'événement est reçu et les données également. Vous pouvez trouver mon code ci-dessous:Laravel Echo ne déclenche pas de rappel
web.php
Route::get('/pusher', function() {
$location = ['lang' => 'langTets', 'lat' => 'latTest'];
event(new Freight\Events\LocationUpdated($location));
return "Event has been sent!";
});
bootstrap.js
import Echo from 'laravel-echo'
window.Pusher = require('pusher-js');
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'iscorrect',
cluster: 'eu',
encrypted: true
});
window.Echo.channel('location-updates')
.listen('.LocationUpdated', function(location) {
console.log("Test");
});
mon app.blade
<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>Freight</title>
<!-- Styles -->
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
<!-- JS -->
<script src="{{ asset('js/app.js') }}"></script>
</head>
<body>
...
Cela apparaît dans ma console, quand je ouvrir la page:
app.js:32652 Pusher : State changed : initialized -> connecting
app.js:32652 Pusher : Connecting : {"transport":"ws","url":"censoredstuff"}
app.js:32652 Pusher : State changed : connecting -> connected with new socket ID morecensoredstuff
app.js:32652 Pusher : Event sent : {"event":"pusher:subscribe","data":{"channel":"location-updates"}}
app.js:32652 Pusher : Event recd : {"event":"pusher_internal:subscription_succeeded","data":{},"channel":"location-updates"}
app.js:32652 Pusher : No callbacks on location-updates for pusher:subscription_succeeded
maintenant sur un événement déclenché, voici ce qui apparaît dans la console:
Pusher : Event recd : {"event":"Freight\\Events\\LocationUpdated","data":{"location":{"lang":"langTets","lat":"latTest"}},"channel":"location-updates"}
app.js:32652 Pusher : No callbacks on location-updates for Freight\Events\LocationUpdated
Avez-vous une idée, pourquoi le console.log ne fonctionne pas correctement? Si plus d'informations sont nécessaires, n'hésitez pas à demander.