Laravel pusher error: JSON returned from webapp was invalid, yet status code was 200

Laravel pusher error: JSON returned from webapp was invalid, yet status code was 200

我在 laravel 5.2 上工作,我添加了 vinkla/laravel-pusher 在我的网站上做实时聊天应用程序,但我遇到了这个问题: "JSON returned from webapp was invalid, yet status code was 200." 这是我的控制器:

public function authMessageChat(Request $req)
    {

        $channelName = e($req->input('channel_name'));
        $socketId = e($req->input('socket_id'));
        $auth = $this->pusher->presence_auth($channelName, $socketId, auth()->user()->id);
         return response($auth);

    }

这是我的脚本:

var pusher = new Pusher('{{env("PUSHER_KEY")}}', {
    authEndpoint: '../auth',
    auth: {
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        },
        params: {
            id: currentUser.id
        }
    }
    });
    var channel = pusher.subscribe('{{$chatChannel}}');
    channel.bind('pusher:subscription_error', function(PusherError){
            console.log('PusherError' + PusherError);
        });
        channel.bind('new-message', function(data) {
        console.log(data.sender);
)};

推送器错误:

您的应用似乎正在返回调试栏 html 作为 json 响应的一部分。

假设您使用的是 barryvdh/laravel-debugbar,根据 the documentation 您可以在运行时关闭调试栏:

Config::set('laravel-debugbar::config.enabled', false);

我假设您需要在发送响应之前添加它,在您用于身份验证端点的控制器 method/route 中(即您调用 socket_auth 方法来自)

@chrismou 谢谢你的回答..

你的答案是正确的,我们可以用另一种方式实现解决方案.. 只需转到您的 .env 文件并制作:

APP_DEBUG=false

而不是

APP_DEBUG=true

谢谢