如何解决在 Laravel 中广播时获得 403 Forbidden
我正在使用私人频道发送广播通知。我正在使用 pusher 和 laravel-echo。我已取消注释
Illuminate\Broadcasting\BroadcastServiceProvider::class,'Broadcast' => Illuminate\Support\Facades\Broadcast::class,
在config/app.php中。
我正在使用网络路由并使用“auth:sanctum”中间件。
BroadcastServiceProvider.php
public function boot()
{
Broadcast::routes();
//Broadcast::routes(['auth:sanctum']);
require base_path('routes/channels.php');
}
我尝试使用两种方法。
bootstap.js
import Echo from 'laravel-echo';
window.Pusher = require('pusher-js');
window.Echo = new Echo({
broadcaster: 'pusher',key: process.env.MIX_PUSHER_APP_KEY,cluster: process.env.MIX_PUSHER_APP_CLUSTER,forceTLS: true,});
在请求头中,Authorization: Bearer null
。
我尝试添加授权令牌。但是,仍然收到此错误。
channels.php
Broadcast::channel('App.Models.User.{id}',function ($user,$id) {
return (int) $user->id === (int) $id;
});
我在推送器帐户中收到 API 消息。但是在vue里听不到,下面是vue文件中的代码。
mounted() {
window.Echo.private("App.Model.User." +this.userId ).notification(
(notification) => {
console.log(notification);
}
);
},
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。