laravel-echo-server получил статус HTTP 404 при попытке аутентификации - PullRequest
0 голосов
/ 09 февраля 2019

Я страдал от проблемы в течение многих дней ...

Я использую Laravel-echo с socket.io, и когда я пробую общедоступный канал, он работает очень хорошо, но когда я пытаюсь использовать частныйили канал присутствия, я получил эту ошибку:

"Клиент не может быть аутентифицирован, получил статус HTTP 404"

=> App \ Providers \ BroadcastServiceProvider :: class, уже был оставлен без комментариев

Моя страница Vue:

 Echo.private('post').listen('comments', (e) => {

         this.messages.push(e[0]) ; 

     });

bootstrap.js

import Echo from 'laravel-echo'

window.io = require('socket.io-client');

window.Echo = new Echo({

     broadcaster: 'socket.io',

     host: window.location.hostname + ':6001' ,

 });

событие:

class comments implements ShouldBroadcast
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    private  $comment , $receiverId ; 

    /**
    * Create a new event instance.
 *
 * @return void
 */
public function __construct($comment , $receiverId)
{
    $this->comment = $comment ;

    $this->$receiverId = $receiverId ; 
}

/**
 * Get the channels the event should broadcast on.
 *
 * @return \Illuminate\Broadcasting\Channel|array
 */
public function broadcastOn()
{
    //i try PrivateChannel('post.'+$this->receiverId ); ...

    return new PrivateChannel('post');
}


public function broadcastWith(){

    return [ $this->comment  ] ;
}

}

маршруты / каналы:

 Broadcast::channel('post', function ($user , $id) {
     return true ; // i already  try this (int) $user->id !== null;
 });

BroadcastServiceProvider:

 public function boot()
  {
    require base_path('routes/channels.php');

    Broadcast::routes();

  }

я использую php artisan queue: работа для очередей

А для redis у меня на компьютере установлен redis-server.exe

помогите пожалуйста !!!!!!

...