为了账号安全,请及时绑定邮箱和手机立即绑定

/pusher/auth 端点在 Laravel 中返​​回 404

/pusher/auth 端点在 Laravel 中返​​回 404

PHP
桃花长相依 2023-12-15 16:14:01
我构建了一个 Laravel 应用程序,尝试通过 Pusher.com 实现 Web Sockets(第一次)。虽然我的公共频道订阅工作正常,但我很难让私人频道正常工作。根据 laravel 文档,您需要在我拥有的 配置文件中取消注释 App\Providers\BroadcastServiceProvider::class 。app.php我的channels.php 有以下规则Broadcast::channel('App.User.{id}', function ($user, $id) {    return (int) $user->id === (int) $id;});Broadcast::channel('private-queue.business.{business}', function ($user, Business $business) {    // @todo: add real authentication    return true;});我还需要添加其他内容才能使/pusher/auth端点正常工作吗?
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

从 Laravel 7.x 开始,广播端点是 broadcasting/auth 而不是 pusher/auth。


我需要像这样更新我的 JS 才能定义自定义身份验证端点:


const pusher = new Pusher('{{ env('PUSHER_APP_KEY') }}', {

    cluster: '{{ env('PUSHER_APP_CLUSTER') }}',

    authEndpoint: '/broadcasting/auth',

    auth: {

        headers: {

            'X-CSRF-TOKEN': '{{ csrf_token() }}',

        }

    }

});

您需要添加 CSRF-TOKEN,否则您将收到页面过期错误。


查看完整回答
反对 回复 2023-12-15
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

你能尝试一下吗: 尝试这个:

取消注释 config/app.php 中的 App\Providers\BroadcastServiceProvider::class 使用 php artisan config:cache 使用 php artisan 路由:缓存 使用 php artisan route:list 检查新路由广播/身份验证


查看完整回答
反对 回复 2023-12-15
  • 2 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信