tlaverdure / laravel-echo-server

Socket.io server for Laravel Echo
MIT License
2.65k stars 511 forks source link

Client can not be authenticated, got HTTP status 500 #122

Closed GiovanniCardamone closed 7 years ago

GiovanniCardamone commented 7 years ago

Hello!

I do not understand how to autenticate user throught route;

this is my routes/api.php Route::post('broadcasting/auth', function($data){ return true; });

this is my laravel-echo-server.json { "authHost": "http://localhost", "authEndpoint": "/api/broadcasting/auth", "clients": [ { "appId": "<< PRIVATE >>", "key": "<< PRIVATE >>" } ], "database": "redis", "databaseConfig": { "redis": { "port": "6379", "host": "127.0.0.1" }, "sqlite": { "databasePath": "/database/laravel-echo-server.sqlite" } }, "devMode": true, "host": null, "port": "6001", "protocol": "http", "socketio": {}, "sslCertPath": "", "sslKeyPath": "" }

when i try to connect to channel Echo.join( ... ) ...

in the console where i run laravel-echo-server i got this: Client can not be authenticated, got HTTP status 500

(full response) `⚠ [6:24:46 PM] - 6SXJmOA38ThqqusmAAAA could not be authenticated to presence-test <!DOCTYPE html>

Whoops, looks like something went wrong.

1/1 FatalThrowableError in api.php line 20: Type error: Too few arguments to function Illuminate\Routing\Router::{closure}(), 0 passed in /home/vagrant/callbox/vendor/laravel/framework/src/Illuminate/Routing/Route.php on line 189 and exactly 1 expected

  1. in api.php line 20
  2. at Router->{closure}() in Route.php line 189
  3. at Route->runCallable() in Route.php line 163
  4. at Route->run() in Router.php line 559
  5. at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 30
  6. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41
  7. at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 148
  8. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  9. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ThrottleRequests.php line 49
  10. at ThrottleRequests->handle(object(Request), object(Closure), '60', '1') in Pipeline.php line 148
  11. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  12. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102
  13. at Pipeline->then(object(Closure)) in Router.php line 561
  14. at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 520
  15. at Router->dispatchToRoute(object(Request)) in Router.php line 498
  16. at Router->dispatch(object(Request)) in Kernel.php line 174
  17. at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 30
  18. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in TransformsRequest.php line 30
  19. at TransformsRequest->handle(object(Request), object(Closure)) in Pipeline.php line 148
  20. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  21. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in TransformsRequest.php line 30
  22. at TransformsRequest->handle(object(Request), object(Closure)) in Pipeline.php line 148
  23. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  24. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ValidatePostSize.php line 25
  25. at ValidatePostSize->handle(object(Request), object(Closure)) in Pipeline.php line 148
  26. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  27. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
  28. at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 148
  29. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
  30. at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102
  31. at Pipeline->then(object(Closure)) in Kernel.php line 149
  32. at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
  33. at Kernel->handle(object(Request)) in index.php line 53

Client can not be authenticated, got HTTP status 500`

tlaverdure commented 7 years ago

Looks like your aren't configuring Broadcasting correctly. Laravel has a RouterServiceProvider that defines the routes to authenticate.

Broadcast::routes();

https://github.com/laravel/laravel/blob/master/app/Providers/BroadcastServiceProvider.php#L17

I would read over the docs again.

https://laravel.com/docs/5.4/broadcasting

GiovanniCardamone commented 7 years ago

oh, sorry i miss that part!