我正在尝试使用AWS Cognito实现Facebook登录。从Facebook收到访问令牌后,我无法更新凭据提供商。
let token = FBSDKAccessToken.currentAccessToken().tokenString
credentialsProvider.logins = [AWSCognitoLoginProviderKey.Facebook.rawValue: token]
在这之后,如果我打印[AWSCognitoLoginProviderKey.Facebook.rawValue: token]
,我会得到长字符串,但如果打印credentialsProvider.logins
,我会获得NIL
。
因此,即使在登录Facebook后,我的身份池也总是显示用户未经身份验证。
如有任何帮助,我们将不胜感激。谢谢
您正在使用最新的AWS iOS SDK吗?如果是,那么credentialProvider.logins将始终为NIL,并将导致您的应用程序创建未经身份验证的身份。
我们正在为此更新我们的文档,但本质上这是你需要做的
使用此构造函数可以创建凭据提供程序。这里的identityProviderManager应该是AWSIdentityProviderManager协议的实现,logins方法应该返回提供者名称到令牌的字典映射。凭据提供程序每次需要标识提供程序令牌时都会调用此方法。