Flutter 与 AWS 的集成(有和没有 Amplify)

Posted

技术标签:

【中文标题】Flutter 与 AWS 的集成(有和没有 Amplify)【英文标题】:Flutter integration with AWS (With and without Amplify) 【发布时间】:2021-07-24 21:46:13 【问题描述】:

我们正在构建一个适用于 Web、androidiosFlutter 应用。我们计划将 AWS 用于后端,使用 Cognito、Dynamodb、S3 等服务。

我们已尝试使用 Amplify - 但了解它尚不适用于 Flutter web。

与 Cognito 联系的最佳方式是什么?然后是 AWS 中的 Dynamodb、S3 等其他服务

我们试过https://pub.dev/packages/amazon_cognito_identity_dart,速度很慢,无法连接。

【问题讨论】:

【参考方案1】:

您应该尝试根据您提到的包装:https://pub.dev/packages/amazon_cognito_identity_dart_2

它对我来说效果很好 - 我能够使用 S3、Lambda、API Gateway、AppSync(带有 websockets)等。请注意,它不支持 Data Store;如果没有它你也能活下去——它应该可以正常工作。

唯一的问题是 - 在网络上登录非常慢(不是在 android 或 ios 上),有一个关于它的未解决问题:https://github.com/furaiev/amazon-cognito-identity-dart-2/issues/123。现在好像有解决办法了,你可以试试看。

Amplify 团队通过使用现有的 Android 和 iOS 库实现了对 Flutter 的支持,并且只是围绕它进行了 Flutter 包装器。我想这有助于他们更快地推出它。但正确的解决方案(在我看来)是在 Dart 中重新编写 javascript 库,并让它在 iOS、Android、Web 和所有其他平台上本地编译。我的猜测是这将在未来出现; Amplify Flutter 仍在 0.x.x 版本中。

【讨论】:

以上是关于Flutter 与 AWS 的集成(有和没有 Amplify)的主要内容,如果未能解决你的问题,请参考以下文章

Flutter Live 2018 全球同步直播,我们线上见!

OpenID 连接与 AWS Cognito 的集成

如何在有和没有 ssh 身份验证的情况下将 Git 与两个不同的存储库一起使用?

api 网关与 aws 批处理集成

Flutter web javascript文件集成

与 BitBucket 集成时 AWS CodePipeline 的 AWS IAM 访问异常