web-dev-qa-db-ja.com

http:// localhost:8000 / broadcasting / auth 404(見つかりません)

私のアプリをプライベートチャンネルのプッシャーに接続しようとしています。

しかし、次のエラーが表示されます。

pusher.js?b3eb:593 POST http:// localhost:8000/broadcasting/auth 404(見つかりません)

エラーの原因と解決方法を教えてください。

11
YaSh Chaudhary

コメントを外した場合はconfig/app.phpを見てください

App\Providers\BroadcastServiceProvider::class,

26

Config/app.phpには名前は同じですが名前空間が異なる2つのサービスプロバイダーがあります

Illuminate\Broadcasting\BroadcastServiceProvider::class,

App\Providers\BroadcastServiceProvider::class,

したがって、両方のコメントを外します。それが動作します。

14

あなたのベースURLが間違っていることを願っています

window.Echo = new Echo({
   authEndpoint : 'http://*******/public/broadcasting/auth',
    broadcaster: 'pusher',
    key: '********',
    cluster: '***',
    encrypted: true
});
12
Muthu17

これらの手順を完了する

1) In config/app.phpこの行のコメントを外します-

App\Providers\BroadcastServiceProvider::class,

2)上記では機能しませんで、それでもエラーが発生する場合-ログインしていないと確信しています。アカウントにログインして確認するだけです(プライベートブロードキャストのため)。

それはあなたの問題を解決し、あなたは必要に応じて追加の認証パラメータをapp\Providers\BroadcastServiceProvider.php

Broadcast::routes(['middleware' => 'auth:admin']);
6

ブレードファイルにcsrf_token()がありませんか?

メタタグに追加できます

<meta name="csrf-token" content="{{ csrf_token() }}">

BroadcastServiceProvider.phpを確認し、ブートメソッドにチャンネルルートを含める必要があります。

0
Rutvij Kothari

私自身の場合、私は追加しました

authEndpoint: "../broadcasting/auth",

あなた自身の場合は、おそらく追加する必要があります

authEndpoint: "broadcasting/auth",

それは私のためにそのように働いた。

0
myckhel

Routes-> channels.phpで認証チャンネルを作成します

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

ドキュメントを参照してください: https://laravel.com/docs/5.4/broadcasting#authorizing-channels

ありがとう

0
M Arfan