【问题标题】:How to save data from Cognito Sync to the server如何将数据从 Cognito Sync 保存到服务器
【发布时间】:2019-11-29 00:49:52
【问题描述】:

我有一个 rails 3.2 服务器、Android 应用程序、我们自己的 API 和 AWS Cognito。我们的后端使用的是 PostgreSQL。如何将 cognito sync 中创建的数据集保存到我们的数据库中?我应该听 cognito sync 成功的回调然后使用我们的 API 保存数据吗?还是我应该在 rails 服务器上使用 aws-sdk 来获取数据集?我不希望 android 应用直接与 RDS 和 S3 对话。

【问题讨论】:

    标签: amazon-web-services ruby-on-rails-3.2 amazon-cognito


    【解决方案1】:

    我认为您可以为此使用 Cognito Events:您可以设置一个 Amazon Lambda 函数,该函数将在每次更新数据集时触发,以便您可以在那里实现自己的逻辑。

    Cognito Streams 也可以工作,并且可能会更快,因为它是异步的:它将每个数据集更新写入 Kinesis 流,然后您可以让后端从该流中使用。

    如上更新链接失效。

    【讨论】:

    • 我可以从 lambda 向我们的服务器发出 post 请求吗?我该怎么做?
    • Lambda 基本上是一段代码,使用您选择的语言,来自受支持的语言。您可以调用您的服务,或直接调用 RDS/S3,方法与从后端调用的方式类似。
    【解决方案2】:

    AWS AppSync 让您可以创建灵活的 API 来安全地访问、操作和组合来自一个或多个数据源的数据,从而简化应用程序开发。 AppSync 是一项托管服务,它使用 GraphQL 让应用程序可以轻松地准确获取所需的数据。

    如果您不熟悉 Amazon Cognito Sync,请使用 AWS AppSync。像亚马逊 Cognito Sync,AWS AppSync 是一种用于同步应用程序的服务 跨设备的数据。

    提供私有和公共数据的单一 GraphQL API。私有数据需要使用 IAM、Amazon Cognito 用户池和 OIDC 等授权机制进行身份验证访问。公共数据不需要经过身份验证的访问,而是通过 API 密钥等授权机制交付。

    您可以使用 aws-amplify 进行同步

    【讨论】:

      猜你喜欢
      • 2019-03-30
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      相关资源
      最近更新 更多