Impossible d'authentifier les utilisateurs dans mon application de chat. Je reçois une erreur 403 dans la console. Cela se produit cependant lorsque j'utilise des canaux privés, mais lorsque j'utilise un canal public, cela fonctionne très bien, mais je veux absolument que les utilisateurs authentifiés seulement. C'est plus comme un spa, d'où l'utilisation d'axios pour presque tout, y compris les demandes d'authentification des utilisateurs à Laravel. Voici mon code :
BroadcastServiceProvider :
` public function boot()
{
Broadcast::routes();
require base_path('routes/channels.php');
}`
Channels.php :
`Broadcast::channel('App.User.{id}', function ($user, $id) {
return (int) $user->id === (int) $id;
});
Broadcast::channel('chat', function ($user) {
return Auth::check();
});
`
directive d'écoute du composant Vue :
`Echo.private('chat')
.listen('.App\\Events\\Chats\\MessageSent', (e) => {
console.log(e);
this.sentMessages.push({
message: e.message.message,
user: e.user
});
`
Événement MessageSent :
` public function broadcastOn()
{
return new PrivateChannel('chat');
}
`
J'utilise maintenant le wrapper vue-echo mais j'ai toujours ce problème, je n'ai toujours pas trouvé ce qui me manque.