微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法将 Flutter 连接到 laravel-websocket 服务器

如何解决无法将 Flutter 连接到 laravel-websocket 服务器

我已经尝试将我的 Flutter 应用程序连接到 laravel-websockets 服务器近一个月了,但我仍然无法弄清楚。

我在 Laravel 后端使用 Beyondco Larevel Websockets,在 Flutter 前端使用 pusher_client 和 laravel_echo。

我一直在尝试从我的 ios 模拟器连接到我的 Laravel 后端主机,该主机使用了代客安全,但失败了。

我的 Flutter 连接:

Echo echoSetup(token,pusherClient) {
  return new Echo({
    'broadcaster': 'pusher','client': pusherClient,'key': DotEnv.env['PUSHER_APP_KEY'],'wsHost': DotEnv.env['PUSHER_APP_HOST'],'wsPort': 6001,'disableStats': true,// 'wssport': 6001,// 'forceTLS': true,// 'auth': {
    //   'headers': {'Authorization': 'Bearer $token'},//   'Content-Type': 'application/json',//   'Accept': 'application/json'
    // },// 'authEndpoint': "https://${DotEnv.env['PUSHER_APP_HOST']}/broadcasting/auth",});
}

PusherClient getPusherClient(String token) {
  PusherOptions options = PusherOptions(
    host: DotEnv.env['PUSHER_APP_HOST'],wsPort: 6001,encrypted: false,cluster: DotEnv.env['PUSHER_APP_CLUSTER'],// wssport: 6001,// auth: PusherAuth(
    //   "https://${DotEnv.env['PUSHER_APP_HOST']}/broadcasting/auth",//   headers: {
    //     'Content-Type': 'application/json',//     'Authorization': 'Bearer ' + token
    //   },// ),);

  return PusherClient(DotEnv.env['PUSHER_APP_KEY'],options,enableLogging: true,autoConnect: false);
}

pusherClient = getPusherClient(token);
pusherClient.connect();
pusherClient.onConnectionStateChange((state) {
  print(
      "prevIoUsstate: ${state.prevIoUsstate},currentState: ${state.currentState}");
});
pusherClient.onConnectionError((error) {
  print(error.message);
});


echo = echoSetup(token,pusherClient);
echo.connect();
echo.channel(channelName).listen(eventName,(PusherEvent e) {
  print("It Worked");
  print(e.data);
});

我的 Flutter 应用程序似乎无法连接。如果它连接,当我启用 SSL 时它将无法工作。

请帮助我解决设置中的问题,为什么我无法从 Flutter 应用程序连接到运行 laravel-websocket 的 SSL 代客服务器。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。