2016-10-24 58 views
0

我在laravel 5.2上工作,我添加了vinkla/laravel-pusher來在我的網站上做實時聊天應用程序,但我遇到了這個問題: 「JSON從webapp返回的是無效的,但狀態碼是200。「 這是我的控制器:Laravel推送錯誤:從webapp返回的JSON無效,但狀態代碼是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); 
)}; 

推錯誤: pusher error

回答

0

它看起來像您的應用程序返回debugbar HTML作爲JSON的一部分響應。

假設它是你正在使用的barryvdh/laravel-debugbar,根據the documentation可以在運行時關閉調試工具欄:

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

我想你需要補充的是,響應前被髮送,在控制器方法/路線您正在使用的身份驗證的端點(即,一個你調用從socket_auth法)

0

@chrismou謝謝您的回答..

你的答案是對的 我們可以實現以另一種方式解決.. 就到你的.ENV文件,並進行:

APP_DEBUG=false 

,而不是

APP_DEBUG=true 

謝謝

相關問題