Laravel用socket.io回显护照认证

时间:2018-07-05 17:52:36

标签: laravel socket.io ionic3 laravel-passport laravel-echo

我正在尝试为我正在使用Ionic和Laravel作为后端开发的应用程序设置Web套接字。

Web套接字正在运行,但是当我尝试将其设为私有时,出现错误。

要启动该应用程序,请运行ionic serve。该服务器正在使用valet运行,并启动事件和socket.io服务器,我正在运行php artisan horizonlaravel-echo-server start

正如我所说的,套接字是公开工作的,但是当我在广播公司中将其设置为PrivateChannel时,套接字会立即断开。

我用来监听频道journey.{id}上的事件的代码是

this.echo = new Echo({
  broadcaster: 'socket.io',
  host: 'http://localhost:6001',
  encrypted: true,
  authHost: 'https://app.dev/',
  authEndpoint: 'api/broadcasting/auth',
  auth:{
    headers: {
      Accept: 'application/json',
      Authorization: 'Bearer ' + key
    }
  }
});

return this.echo.private('journey.' + id);

然后我在页面中收听此消息,因为此代码在提供程序中。

在服务器端,我的Broadcast::routes(['middleware' => ['web', 'auth:api']]);中有行routes/api.php

希望您能提供帮助!如果您需要更多信息,请询问。

0 个答案:

没有答案