我创建了一个包含所有设置的通知系统,当我向推送者发送通知时它工作正常。但是当我尝试在私人频道上收听时,我得到了错误。
这是我的 bootstrap.js 文件 laravel-echo 代码
import Echo from 'laravel-echo';
window.Pusher = require('pusher-js');
let token = document.head.querySelector('meta[name="csrf-token"]').content;
window.Echo = new Echo({
broadcaster: 'pusher',
key: process.env.MIX_PUSHER_APP_KEY,
cluster: process.env.MIX_PUSHER_APP_CLUSTER,
forceTLS: true,
auth: {
headers: {
'X-CSRF-Token': token
}
}
});
这是我的主要 html 的元标记内容
<meta name="csrf-token" content="{{ csrf_token() }}">
<meta name="user-id" content="{{Auth::check() ? Auth::user()->api_token:''}}">
这是在 app.js 中监听的代码
let userId = document.head.querySelector('meta[name="user-id"]').content;
Echo.private('App.User.' + userId)
.notification((notification) => {
console.log(notification.type);
});
这是我在控制台上遇到的错误
POST http://localhost:3000/broadcasting/auth 419(未知状态)
提前致谢