【问题标题】:The OAuth response flow failedOAuth 响应流程失败
【发布时间】:2023-01-14 06:17:00
【问题描述】:

我正在使用 aws amplifyreact-native-inappbrowser。我启用了 Google SSO 身份验证并且它工作正常,但是当我添加 GitHub 身份验证时它没有按预期工作。 我使用 Hub.listen('auth', async (data) => {...} 添加了一个监听器,awsConfig 中的 urlOpener 看起来像这样:

onst urlOpener = async (url, redirectUrl, settings) => {
  try {
    if (await InAppBrowser.isAvailable()) {
      const { type, url: newUrl } = await InAppBrowser.openAuth(
        url,
        redirectUrl,
        { ...inAppBrowserSettings, ...settings },
      );
      if (type === 'success') {
        Linking.openURL(newUrl);
      }
    } else {
      Linking.openURL(url);
    }
  } catch (error) {
    Alert.alert(error.message);
  }
};

Hub.listener 看起来像这样:

 useEffect(() => {
    const unsubscribe = Hub.listen('auth', async (data) => {
      const { payload } = data;
      const user = payload.data;
      switch (payload.event) {
        case AuthEnum.SIGN_IN:
          handleSignIn(user);
          break;
        case AuthEnum.SIGN_OUT:
          handleSignOut();
          break;
        case AuthEnum.SIGN_IN_FAILURE:
          handleSignInFailure();
          break;
      }

    });
   return () => unsubscribe();
}, []);
    

当我尝试使用 GitHub 进行身份验证时,GitHub API 返回正确的令牌,但 aws Hub 捕获 SIGN_IN_FAILUREdata 如下所示:

{
  "channel": "auth",
  "payload": {
    "event": "signIn_failure",
    "data": {},
    "message": "The OAuth response flow failed"
  },
  "source": "Auth",
  "patternInfo": []
}

我不确定为什么会这样。解决方案可能是在 GitHub 身份验证的情况下删除侦听器,但我不确定该怎么做,因为 InAppBrowser.openAuth() 用于 Google SSO 和 GitHub 身份验证。

如果我提供的信息不够,请务必告诉我。任何建议/帮助都会很棒!

【问题讨论】:

    标签: react-native aws-amplify deep-linking react-native-linking react-native-inappbrowser-reborn


    【解决方案1】:

    我认为 AWS Amplify 不支持 github oauth。我相信支持的是:Google、Apple、Facebook 和 Amazon

    Supported social logins

    【讨论】:

      猜你喜欢
      • 2017-09-15
      • 2014-11-28
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 2011-11-09
      • 2012-08-11
      • 2018-10-20
      • 1970-01-01
      相关资源
      最近更新 更多