ios Facebook的电子邮件地址和电话没有在Cognito用户池中填充

km0tfn4u  于 2023-03-31  发布在  iOS
关注(0)|答案(1)|浏览(226)

我正在尝试将Facebook集成为认知用户池的提供商,这是iOS应用程序开发的一部分。正在用户池中创建用户,但缺少电子邮件地址。我们正在从Facebook请求电子邮件地址,并将属性Map添加到用户池以读取电子邮件。但电子邮件字段为空。此问题可能是什么原因?是否与Facebook的权限有关,我是否需要完成业务验证或应用程序审查才能访问这些属性?仅供参考,我正在测试一个在Facebook中配置了电子邮件地址和电话号码的帐户。
iOS代码调用amplifier以呈现fb登录。

Amplify.Publisher.create {
            try await Amplify.Auth.signInWithWebUI(for: .facebook, presentationAnchor: window)
            }.sink {
                if case let .failure(authError) = $0 {
                    print("Sign in failed \(authError)")
                }
            }
            receiveValue: { signInResult in
                if signInResult.isSignedIn {
                    print("Sign in succeeded")
                }
            }

amplifyconfiguration.json

{
    "auth": {
        "plugins": {
            "awsCognitoAuthPlugin": {
                "IdentityManager": {
                    "Default": {}
                },
                "CognitoUserPool": {
                    "Default": {
                        "PoolId": "us-*********",
                        "AppClientId": "************",
                        "AppClientSecret": "************",
                        "Region": "us-************"
                    }
                },
                "Auth": {
                    "Default": {
                        "authenticationFlowType": "USER_SRP_AUTH",
                        "OAuth": {
                            "WebDomain": "************",
                            "AppClientId": "************",
                            "AppClientSecret": "************",
                            "SignInRedirectURI": "************://",
                            "SignOutRedirectURI": "",
                            "Scopes": ["openid", "email"]
                        }
                    }
                }
            }
        }
    }
}

控制台内fb设置的屏幕截图。提供了fb的FYI值,从屏幕截图中删除


fb截图显示我们可以访问电子邮件地址。除了登录审查错误警报。我们是否需要进行登录审查才能访问电子邮件?

9ceoxa92

9ceoxa921#

我认为这是一个错误,我在属性Map中指定了电话号码。正如用户@CBroe指出的那样,电话号码无法从Facebook访问。由于我在属性Map中指定了电话号码沿着电子邮件,这也导致了电子邮件Map失败。从Map中删除电话号码修复了这个问题。

相关问题