首页 > 解决方案 > 适用于 iOS 的 AWS Cognito 身份池文档?

问题描述

我的问题与此处的问题相似。我使用 AWSMobileClient 创建了注册/登录,这部分工作正常。但是,当我尝试使用 Cognito 用户池身份查询 AppSync 时,我无法返回任何数据。我为身份池的经过身份验证的 IAM 角色分配了正确的策略。我认为问题可能是我需要实现一些代码片段,例如下面的代码片段:

let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USWest2,
   identityPoolId:"us-west-2:d2545277-8214-4781-b516-2eb72d1bceba")

let configuration = AWSServiceConfiguration(region:.USWest2, credentialsProvider:credentialsProvider)

AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration

但是,我不认为这三行是完整的代码,我找不到任何文档。如果有人知道,您能否发布一些文档/示例代码?谢谢。

标签: amazon-web-servicesamazon-cognitoaws-appsyncaws-sdk-ios

解决方案


您可以使用新的 AWSMobileClient 自动执行 Auth 例程,然后根据文档将其传递给AppSync 客户端构造函数

let appSyncConfig = try AWSAppSyncClientConfiguration(appSyncClientInfo: AWSAppSyncClientInfo(), 
credentialsProvider: AWSMobileClient.sharedInstance(), databaseURL: databaseURL)

appSyncClient = try AWSAppSyncClient(appSyncConfig: appSyncConfig)

Cognito 角色将需要此处概述的适用于 AppSync 的适当 IAM 策略


推荐阅读