expo-auth-session 重定向回应用程序的问题(仅限 Android)iOS 完美运行

问题描述 投票:0回答:1

问题详细描述:
登录后(以我的方式是 Microsoft - Azure),Expo 给我这个错误:

https://ctrlv.link/ruqB

日志说:

https://ctrlv.link/Rpb0

在我看来,从 Google Chrome 登录重定向回来存在问题,Safari (iOS) 直接打开 expo 应用程序,而 Android 则必须打开浏览器的外部源。

有一些代码来源:

// Endpoint
const discovery = useAutoDiscovery(`https://login.microsoftonline.com/${tenantID}/v2.0`);

// Request
const [request, response, promptAsync] = useAuthRequest(
  {
    clientId: process.env.EXPO_PUBLIC_CLIENT_ID,
    scopes: ["openid", "profile", "email", "offline_access", "User.Read.All"],
    redirectUri: process.env.EXPO_PUBLIC_REDIRECT_URI,
  },
  discovery
);

我使用博览会文档中的方法:
https://docs.expo.dev/guides/authentication/#azure

登录源

const handleLogin = async () => {
  try {
    const codeResponse = await promptAsync();

    if (request && codeResponse?.type === "success" && discovery) {
      const res = await exchangeCodeAsync(
        {
          clientId,
          code: codeResponse.params.code,
          extraParams: request.codeVerifier
            ? { code_verifier: request.codeVerifier }
            : undefined,
          redirectUri,
        },
        discovery
      );

      setToken(res.accessToken);
      await gettingAllDatas(); // Fetch and store data here
    }
  } catch (error) {
    console.error("Error handling login:", error);
  }
};

感谢您的回复:)

reactjs react-native expo expo-auth-session
1个回答
0
投票

同样的问题!你找到解决办法了吗?

© www.soinside.com 2019 - 2024. All rights reserved.