You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Amplify Facebook联合登录未返回邮箱报invalid_request错误求助

问题排查步骤

1. 检查Facebook开发者平台配置

  • 确认你的Facebook应用已申请email权限:如果应用处于开发模式,仅测试用户可获取邮箱;若要对外开放使用,email属于高级权限,必须通过Facebook官方应用审核后,全量用户才能正常返回邮箱字段。
  • 确认Facebook应用的OAuth重定向URI列表中,已添加Cognito的回调地址:https://{baseURL}.amazoncognito.com/oauth2/idpresponse,地址不匹配会导致Facebook截断返回的用户字段。
  • 确认测试使用的Facebook账号已绑定有效邮箱,且未设置邮箱对外隐藏,否则授权时不会返回邮箱字段。

2. 检查Cognito用户池配置

  • 进入Cognito控制台的身份提供商 > Facebook配置页,确认已添加属性映射:将Facebook侧的email字段,映射到Cognito用户池的email内置属性,无映射的情况下即使Facebook返回邮箱,Cognito也不会识别读取。
  • 确认Cognito中配置的Facebook授权范围已包含email,从你提供的请求日志来看scope已携带该值,可再去控制台二次确认避免配置遗漏。
  • (可选兜底测试)可暂时将Cognito用户池的邮箱属性从必填改为非必填,先验证整个登录流程能否正常走通,缩小排查范围。

3. 代码检查

你当前的Amplify调用写法没有问题,不需要修改:

const handleFacebookLogin = async () => {
  try {
    await Auth.federatedSignIn({
      provider: 'Facebook',
    })
  } catch (e) {
    notification(e.message, "danger");
  }
};

内容的提问来源于stack exchange,提问作者Haris George

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:21:01