Laravel 5 无法通过Redis&;在专用频道上广播通知;拉威尔5.3
我正在与Laravel Redis Socketio LaravelEcho一起制作实时通知。到目前为止,我可以在公共频道播出,但只能在私人频道播出。Laravel 5 无法通过Redis&;在专用频道上广播通知;拉威尔5.3,laravel-5,redis,socket.io,laravel-echo,Laravel 5,Redis,Socket.io,Laravel Echo,我正在与Laravel Redis Socketio LaravelEcho一起制作实时通知。到目前为止,我可以在公共频道播出,但只能在私人频道播出。 My bootstrap.js: import Echo from "laravel-echo" window.Echo = new Echo({ broadcaster: 'socket.io', host: window.location.hostname + ':6001' }); Laravel-echo-server
My bootstrap.js:
import Echo from "laravel-echo"
window.Echo = new Echo({
broadcaster: 'socket.io',
host: window.location.hostname + ':6001'
});
Laravel-echo-server.json:
"authHost": "http://localhost",
"authEndpoint": "/broadcasting/auth",
"clients": [
{
"appId": "{{Omitted purposely}}",
"key": "{{Omitted purposely}}"
}
],
"database": "redis",
"databaseConfig": {
"redis": {},
"sqlite": {
"databasePath": "/database/laravel-echo-server.sqlite"
}
},
"devMode": true,
"host": null,
"port": "6001",
"protocol": "http",
"socketio": {},
"sslCertPath": "",
"sslKeyPath": ""
在我的notification类中,我将broadcastOn()设置为:
我的客户是:
Echo.private('my-channel')
.notification((notification) => {
console.log('I am here');
});
公共频道一切正常,但对于专用频道,启动laravel echo server后,命令行显示以下内容:
错误:Connect ECONREFUSSED 127.0.0.1:80。
发送身份验证请求时出错
您必须通过在
config/app.php
App\Providers\BroadcastServiceProvider::class,
因此,在您的routes/channel.php
中将检查特定的保护,并根据您的条件返回1或0
Echo.private('my-channel')
.notification((notification) => {
console.log('I am here');
});