XXXXX не удалось аутентифицировать в presence-online, клиент не может быть аутентифицирован, получен статус HTTP 404

#reactjs #laravel #redis #socket.io #laravel-echo

#reactjs #laravel #redis #socket.io #laravel-echo

Вопрос:

Я новичок в Laravel. У меня возникла проблема, когда я попытался создать сообщение в реальном времени с помощью Laravel amp; ReactJS, сокета.Ошибки ввода-вывода, повторного ввода-вывода при запуске laravel-echo server

введите описание изображения здесь

файл laravel-echo-server.json

 {
"authHost": "http://localhost:8000",
"authEndpoint": "/broadcasting/auth",
"clients": [
    {
        "appId": "XXXXXXXXXX",
        "key": "XXXXXXXXXXXXXXXXXXXXX"
    }
],
"database": "redis",
"databaseConfig": {
    "redis": {},
    "sqlite": {
        "databasePath": "/database/laravel-echo-server.sqlite"
    }
},
"devMode": true,
"host": null,
"port": "6001",
"protocol": "http",
"socketio": {},
"secureOptions": 67108864,
"sslCertPath": "",
"sslKeyPath": "",
"sslCertChainPath": "",
"sslPassphrase": "",
"subscribers": {
    "http": true,
    "redis": true
},
"apiOriginAllow": {
    "allowCors": false,
    "allowOrigin": "",
    "allowMethods": "",
    "allowHeaders": ""
}
  

}

файл channels.php

 Broadcast::channel('App.User.{id}', function ($user, $id) {
return (int) $user->id === (int) $id;
});

Broadcast::channel('online', function ($user) {
return $user;
});
  

На стороне клиента используйте ReactJS,
файл index.js

 import Echo from "laravel-echo"

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

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

window.Echo.join(`online`)
  .here((users) => {
    console.log(users)
  })
  .joining((user) => {
    console.log(user.name);
  })
  .leaving((user) => {
    console.log(user.name);
  });
  

Нужна помощь … Большое спасибо!

Комментарии:

1. Синь Чао эм. При использовании переполнения стека нам необходимо получить как можно больше информации о проблеме. Пожалуйста, расскажите нам, что вы пытаетесь сделать, а что не работает

2. Извините, потому что я впервые задаю вопрос о переполнении стека, я пытаюсь создать приложение для чата, используя laravel (серверную часть) и ReactJS (интерфейс), после изучения Google я решил выбрать сокет. io и redis для этого. Это только начало, когда я хочу консоль. выйдите из пользователей, которые подключены к сети в системе. Но при запуске laravel-echo server возникает ошибка «Клиент не может быть аутентифицирован, получил статус HTTP 404». Если у вас есть какие-либо вопросы, пожалуйста, задавайте больше

3. в config/app.php нем есть массив поставщиков, найдите // AppProvidersBroadcastServiceProvider::class и убедитесь, что он раскомментирован

4. да, я это сделал, он все еще не работает:(

5. Работает ли redis?