Unable to detect login share from the Auth Network. This may be due to slow internet connection. Check your internet speed and try again

Can’t login and the modal shows the following message.

Unable to detect login share from the Auth Network. This may be due to slow internet connection. Check your internet speed and try again. If you’re using a vpn, please turn it off.

log

{"errorMsg":"Could not get result from torus nodes \n ","errorStack":"Error: Could not get result from torus nodes \n \n    at _ (https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:13049https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:13049https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:13049:1:13049)\n    at Proxy.created (https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:33979https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:33979https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:33979:1:33979)","title":"Mount Error","createdAt":"2024/12/3 9:43:28","info":{"customAuthState":{"client":"BAWhX4AH-1Xp-QwVW5jaCZK8TrveaTjr453CsHihUwQ1Brd5xqjlJyQOgXxgtsY3G0059MM856ploBhIierZmfM","currentLoginProvider":"jwt","popupWindow":"false","whiteLabel":"{\"name\":\"Kokudaka Project\",\"logoLight\":\"\",\"defaultLanguage\":\"jp\",\"theme\":{\"primary\":\"#000000\"}}","keyMode":"v1","isCustomVerifier":"true","socialFactorFlow":"","loginId":"759c0cafbad4ab1a75b3d66ad8055b01a099055a3e3845004c904e06fe925dd9","sessionNamespace":"","version":"4","instanceId":"2op07ishv58","verifier":"apple-questry","typeOfLogin":"jwt","redirectToOpener":false},"customAuthArgs":{"typeOfLogin":"jwt","verifier":"apple-questry","clientId":"1Pzj2usk5KkjXNAmO1gvxSxyfsJgXr8k","jwtParams":{"domain":"https://prd-questry.jp.auth0.com","verifierIdField":"sub"},"customState":{"client":"BAWhX4AH-1Xp-QwVW5jaCZK8TrveaTjr453CsHihUwQ1Brd5xqjlJyQOgXxgtsY3G0059MM856ploBhIierZmfM","currentLoginProvider":"jwt","popupWindow":"false","whiteLabel":"{\"name\":\"Kokudaka Project\",\"logoLight\":\"\",\"defaultLanguage\":\"jp\",\"theme\":{\"primary\":\"#000000\"}}","keyMode":"v1","isCustomVerifier":"true","socialFactorFlow":"","loginId":"759c0cafbad4ab1a75b3d66ad8055b01a099055a3e3845004c904e06fe925dd9","sessionNamespace":"","version":"4"},"hash":"access_token=eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIiwiaXNzIjoiaHR0cHM6Ly9wcmQtcXVlc3RyeS5qcC5hdXRoMC5jb20vIn0..kSs4oCGUfHh3rDsc.qfZKmAhjo1Rb7MJFGx7u5ClY3cIFKL89V91FM5ZV4kLGe1tLyuXv-w_7zfiVc2P2K-1795s2mqvueQUDLqzuzLxMFQIkfkswnAnjh_hErvcw3wZN0GN10wWyyOcrgaUfeDVefiMDFwF3Cf-qtj_aJSgp-5cFUlY5jvOj1-yote4pp0GJtpjZKQM7QwhWFkd8mlSwdPTATJ-weqPMxtxdEYwjcWVJHWobtOYNY2QW1Dq2S4Taorsf_T9RPy6jy9efeQS4zJQr98_WzHBBvapHJeJUgdnVqoKmbrxUSd50QFW_CKGIpr6XNInfs0A-AXHWEBx1ClM.Rs7AQvECmO1XWe6V0adVIg&scope=openid%20profile%20email&expires_in=7200&token_type=Bearer&state=eyJjbGllbnQiOiJCQVdoWDRBSC0xWHAtUXdWVzVqYUNaSzhUcnZlYVRqcjQ1M0NzSGloVXdRMUJyZDV4cWpsSnlRT2dYeGd0c1kzRzAwNTlNTTg1NnBsb0JoSWllclptZk0iLCJjdXJyZW50TG9naW5Qcm92aWRlciI6Imp3dCIsInBvcHVwV2luZG93IjoiZmFsc2UiLCJ3aGl0ZUxhYmVsIjoie1wibmFtZVwiOlwiS29rdWRha2EgUHJvamVjdFwiLFwibG9nb0xpZ2h0XCI6XCJcIixcImRlZmF1bHRMYW5ndWFnZVwiOlwianBcIixcInRoZW1lXCI6e1wicHJpbWFyeVwiOlwiIzAwMDAwMFwifX0iLCJrZXlNb2RlIjoidjEiLCJpc0N1c3RvbVZlcmlmaWVyIjoidHJ1ZSIsInNvY2lhbEZhY3RvckZsb3ciOiIiLCJsb2dpbklkIjoiNzU5YzBjYWZiYWQ0YWIxYTc1YjNkNjZhZDgwNTViMDFhMDk5MDU1YTNlMzg0NTAwNGM5MDRlMDZmZTkyNWRkOSIsInNlc3Npb25OYW1lc3BhY2UiOiIiLCJ2ZXJzaW9uIjoiNCIsImluc3RhbmNlSWQiOiIyb3AwN2lzaHY1OCIsInZlcmlmaWVyIjoiYXBwbGUtcXVlc3RyeSIsInR5cGVPZkxvZ2luIjoiand0IiwicmVkaXJlY3RUb09wZW5lciI6ZmFsc2V9&id_token=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjluUHB5Tk9hQ3pZcFBrQVVfSzlvMyJ9.eyJnaXZlbl9uYW1lIjoibmlrb3Jhc3VrZXBwYSIsIm5pY2tuYW1lIjoiZWt1c3VtYWtpbmFzeXV2aSIsIm5hbWUiOiJuaWtvcmFzdWtlcHBhIiwicGljdHVyZSI6Imh0dHBzOi8vbGgzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9hL0FDZzhvY0xvN3diMTliWUZFQ0VLZnJWVGtuMzlJWG5VZkFRMW5yVlplLXd3eXZhaHdrczY5dz1zOTYtYyIsInVwZGF0ZWRfYXQiOiIyMDI0LTEyLTAzVDAwOjQzOjIyLjYxNFoiLCJlbWFpbCI6ImVrdXN1bWFraW5hc3l1dmlAZ21haWwuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImlzcyI6Imh0dHBzOi8vcHJkLXF1ZXN0cnkuanAuYXV0aDAuY29tLyIsImF1ZCI6IjFQemoydXNrNUtralhOQW1PMWd2eFN4eWZzSmdYcjhrIiwiaWF0IjoxNzMzMTg2NjAyLCJleHAiOjE3MzMxODY2NjIsInN1YiI6Imdvb2dsZS1vYXV0aDJ8MTAyNjEzNTMyNjE0NjUzNTY0MTQ0IiwiYXV0aF90aW1lIjoxNzMzMTg2NjAyLCJhdF9oYXNoIjoicnU4bnE1TEd6YlV1WTlUcWNWaHlodyIsInNpZCI6IlZadWFwVWJtRUpSaUtjUl9sZlZYVEhUaTQyLUxqNlNXIiwibm9uY2UiOiIyb3AwN2lzaHY1OCJ9.Z2_v_pI3F4OesA2W4xPA129bf612DbKS1K7HQajUsQfVEJGBR0hfA3kbaVdeQWT6YCHc254r8lZ-JKSGpkSontapHUZYx2uJE1Bf4QS9poFXKnOgzXX3sJIGgOC6T8gQSVt4S3NrpyJu_M9WRuKezf9VboPj4Q2rxDBDDsDsD0uhvNkp_M5JtzsgpEkF8Yei1dqaa_qEk2nVWTHOkosGeD1NdWlQ7u7slY__aZv4x9E9I2TfybfjQvJZdDZ_DXxA2NdMAZm_a7LWPKrVSMKWAmocoyz71XDSzRcc4JtfGJ-S5517HKbH-KqPQdAnffia7gXz-00mYKNqtIbr0J0XRA","queryParameters":{}},"customAuthError":"Could not get result from torus nodes \n ","customAuthHashParams":{"access_token":"eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIiwiaXNzIjoiaHR0cHM6Ly9wcmQtcXVlc3RyeS5qcC5hdXRoMC5jb20vIn0..kSs4oCGUfHh3rDsc.qfZKmAhjo1Rb7MJFGx7u5ClY3cIFKL89V91FM5ZV4kLGe1tLyuXv-w_7zfiVc2P2K-1795s2mqvueQUDLqzuzLxMFQIkfkswnAnjh_hErvcw3wZN0GN10wWyyOcrgaUfeDVefiMDFwF3Cf-qtj_aJSgp-5cFUlY5jvOj1-yote4pp0GJtpjZKQM7QwhWFkd8mlSwdPTATJ-weqPMxtxdEYwjcWVJHWobtOYNY2QW1Dq2S4Taorsf_T9RPy6jy9efeQS4zJQr98_WzHBBvapHJeJUgdnVqoKmbrxUSd50QFW_CKGIpr6XNInfs0A-AXHWEBx1ClM.Rs7AQvECmO1XWe6V0adVIg","scope":"openid%20profile%20email","expires_in":"7200","token_type":"Bearer","state":"eyJjbGllbnQiOiJCQVdoWDRBSC0xWHAtUXdWVzVqYUNaSzhUcnZlYVRqcjQ1M0NzSGloVXdRMUJyZDV4cWpsSnlRT2dYeGd0c1kzRzAwNTlNTTg1NnBsb0JoSWllclptZk0iLCJjdXJyZW50TG9naW5Qcm92aWRlciI6Imp3dCIsInBvcHVwV2luZG93IjoiZmFsc2UiLCJ3aGl0ZUxhYmVsIjoie1wibmFtZVwiOlwiS29rdWRha2EgUHJvamVjdFwiLFwibG9nb0xpZ2h0XCI6XCJcIixcImRlZmF1bHRMYW5ndWFnZVwiOlwianBcIixcInRoZW1lXCI6e1wicHJpbWFyeVwiOlwiIzAwMDAwMFwifX0iLCJrZXlNb2RlIjoidjEiLCJpc0N1c3RvbVZlcmlmaWVyIjoidHJ1ZSIsInNvY2lhbEZhY3RvckZsb3ciOiIiLCJsb2dpbklkIjoiNzU5YzBjYWZiYWQ0YWIxYTc1YjNkNjZhZDgwNTViMDFhMDk5MDU1YTNlMzg0NTAwNGM5MDRlMDZmZTkyNWRkOSIsInNlc3Npb25OYW1lc3BhY2UiOiIiLCJ2ZXJzaW9uIjoiNCIsImluc3RhbmNlSWQiOiIyb3AwN2lzaHY1OCIsInZlcmlmaWVyIjoiYXBwbGUtcXVlc3RyeSIsInR5cGVPZkxvZ2luIjoiand0IiwicmVkaXJlY3RUb09wZW5lciI6ZmFsc2V9","id_token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjluUHB5Tk9hQ3pZcFBrQVVfSzlvMyJ9.eyJnaXZlbl9uYW1lIjoibmlrb3Jhc3VrZXBwYSIsIm5pY2tuYW1lIjoiZWt1c3VtYWtpbmFzeXV2aSIsIm5hbWUiOiJuaWtvcmFzdWtlcHBhIiwicGljdHVyZSI6Imh0dHBzOi8vbGgzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9hL0FDZzhvY0xvN3diMTliWUZFQ0VLZnJWVGtuMzlJWG5VZkFRMW5yVlplLXd3eXZhaHdrczY5dz1zOTYtYyIsInVwZGF0ZWRfYXQiOiIyMDI0LTEyLTAzVDAwOjQzOjIyLjYxNFoiLCJlbWFpbCI6ImVrdXN1bWFraW5hc3l1dmlAZ21haWwuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImlzcyI6Imh0dHBzOi8vcHJkLXF1ZXN0cnkuanAuYXV0aDAuY29tLyIsImF1ZCI6IjFQemoydXNrNUtralhOQW1PMWd2eFN4eWZzSmdYcjhrIiwiaWF0IjoxNzMzMTg2NjAyLCJleHAiOjE3MzMxODY2NjIsInN1YiI6Imdvb2dsZS1vYXV0aDJ8MTAyNjEzNTMyNjE0NjUzNTY0MTQ0IiwiYXV0aF90aW1lIjoxNzMzMTg2NjAyLCJhdF9oYXNoIjoicnU4bnE1TEd6YlV1WTlUcWNWaHlodyIsInNpZCI6IlZadWFwVWJtRUpSaUtjUl9sZlZYVEhUaTQyLUxqNlNXIiwibm9uY2UiOiIyb3AwN2lzaHY1OCJ9.Z2_v_pI3F4OesA2W4xPA129bf612DbKS1K7HQajUsQfVEJGBR0hfA3kbaVdeQWT6YCHc254r8lZ-JKSGpkSontapHUZYx2uJE1Bf4QS9poFXKnOgzXX3sJIGgOC6T8gQSVt4S3NrpyJu_M9WRuKezf9VboPj4Q2rxDBDDsDsD0uhvNkp_M5JtzsgpEkF8Yei1dqaa_qEk2nVWTHOkosGeD1NdWlQ7u7slY__aZv4x9E9I2TfybfjQvJZdDZ_DXxA2NdMAZm_a7LWPKrVSMKWAmocoyz71XDSzRcc4JtfGJ-S5517HKbH-KqPQdAnffia7gXz-00mYKNqtIbr0J0XRA"}}}

Implementation (React Native)

import {Platform} from 'react-native';
import Config from 'react-native-config';
import Web3Auth, {
  LOGIN_PROVIDER,
  OPENLOGIN_NETWORK,
} from '@web3auth/react-native-sdk';
import * as WebBrowser from '@toruslabs/react-native-web-browser';
import '@ethersproject/shims';
import {ethers} from 'ethers';
import AsyncStorage from '@react-native-async-storage/async-storage';
import {login, logout} from './nishiaizu';
import RNRestart from 'react-native-restart';
import axios from 'axios';

export const handleLoginProviderClick = onClose => {
  const redirectUrl =
    Platform.OS === 'android'
      ? Config.REDIRECT_URL_ANDROID
      : Config.REDIRECT_URL_IOS;

  const network =
    Config.ENV === 'DEBUG' ? OPENLOGIN_NETWORK.TESTNET : OPENLOGIN_NETWORK.CYAN;

  const whiteLabel = {
    name: 'My Project',
    logoLight: '',
    defaultLanguage: 'jp',
    theme: {
      primary: '#000000',
    },
  };

  const web3auth = new Web3Auth(WebBrowser, {
    clientId: Config.WEB3AUTH_CLIENTID,
    network: network,
    whiteLabel: whiteLabel,
    loginConfig: {
      jwt: {
        verifier: 'apple-questry',
        typeOfLogin: 'jwt',
        clientId: Config.AUTH0_CLIENTID,
      },
    },
  });

  web3auth
    .login({
      // https://web3auth.io/docs/sdk/pnp/react-native/custom-authentication#using-auth0-login
      loginProvider: LOGIN_PROVIDER.JWT,
      redirectUrl,
      extraLoginOptions: {
        domain: Config.AUTH0_DOMAIN,
        verifierIdField: 'sub',
      },
    })
    .then(async result => {
      const wallet = new ethers.Wallet(result?.privKey ?? '');
      const address = wallet.address;
      const keyValues = [
        ['walletAddress', address],
        ['verifierId', result.userInfo.verifierId],
        ['oAuthIdToken', result.userInfo.oAuthIdToken],
        ['oAuthIdToken', result.userInfo.oAuthAccessToken],
        ['oAuthAccessToken', result.userInfo.oAuthAccessToken],
        ['web3authPrivKey', result.privKey],
        ['isUserLoggedIn', 'true'],
        ['isAfterLogIn', 'true'],
      ];
      await AsyncStorage.multiSet(keyValues);
      await login(
        address,
        result.privKey,
        result.userInfo.name,
        result.userInfo.email,
        result.userInfo.verifierId,
      );
      onClose();
      try {
        RNRestart.Restart();
      } catch (error) {
        console.log('Restart Error: ', error);
      }
    })
    .catch(error => {
      console.error('Error: ', error);
    });
};

export const handleLogoutProviderClick = async () => {
  try {
    const keys = [
      'walletAddress',
      'verifierId',
      'oAuthIdToken',
      'oAuthAccessToken',
      'nishiaizuAccessToken',
      'web3authPrivKey',
      'isUserLoggedIn',
    ];
    keys.forEach(async key => {
      await AsyncStorage.removeItem(key);
    });
    await logout();
    RNRestart.Restart();
  } catch (error) {
    console.error('logout failed: ', error);
  }
};

/**
 * Post Exit。
 */

// Auth0の認証トークンを取得
const getAuth0AccessToken = async () => {
  const url = `${Config.AUTH0_DOMAIN}/oauth/token`;
  const clientId = Config.AUTH0_CLIENTID;
  const clientSecret = Config.AUTH0_CLIENTSECRET;
  const audience = `${Config.AUTH0_DOMAIN}/api/v2/`;

  try {
    const response = await axios.post(url, {
      grant_type: 'client_credentials',
      client_id: clientId,
      client_secret: clientSecret,
      audience: audience,
    });
    const accessToken = response.data.access_token;
    return accessToken;
  } catch (error) {
    console.error('Failed to retrieve access token:', error);
    throw error;
  }
};

export const exitFromQuestryApp = async (
  setShowExitModal: React.Dispatch<React.SetStateAction<boolean>>,
) => {
  let verifierId: string | null = ''; // auth0_user_id
  let oAuthAccessToken: string | null = '';
  let oAuthIdToken: string | null = '';

  await AsyncStorage.multiGet([
    'verifierId',
    'oAuthIdToken',
    'oAuthAccessToken',
  ]).then(data => {
    verifierId = data[0][1];
    oAuthIdToken = data[1][1];
    oAuthAccessToken = data[2][1];
  });

  try {
    const auth0AccessToken = await getAuth0AccessToken();
    const axiosInstance = axios.create({
      baseURL: `${Config.AUTH0_DOMAIN}/api/v2/`,
      headers: {
        'Content-Type': 'application/json',
        Authorization: `Bearer ${auth0AccessToken}`,
      },
    });
    const url = `/users/${verifierId}`;
    await axiosInstance.delete(url).then(async () => {
      if (verifierId?.includes('apple')) {
        const url = 'https://appleid.apple.com/auth/revoke';
        const headers = {
          'Content-Type': 'application/x-www-form-urlencoded',
        };

        const data = {
          client_id: Config.KEYID,
          client_secret: oAuthIdToken,
          token: oAuthAccessToken,
          token_type_hint: 'access_token',
        };

        const formData = new URLSearchParams();
        for (const key in data) {
          formData.append(key, data[key]);
        }

        try {
          const response = await axios.post(url, formData.toString(), {
            headers,
          });
          console.log('AccessToken revoked successfully.', response.status);
        } catch (error) {
          console.error(error);
        }
      }
      () => handleLogoutProviderClick();
      setShowExitModal(false);
    });
    console.log('User deleted successfully.');
  } catch (error) {
    console.error('Failed to delete user:', error);
    throw new Error('User deletion failed.');
  }
};

Hi Moti! Thank you for providing detailed information about your issue. Here’s a summary for the support team:

Issue Summary:

  • SDK Details: Help - Plug n Play
  • Platform: React Native
  • SDK Version: Not specified, please confirm
  • Error Message: Unable to detect login share from the Auth Network. This may be due to slow internet connection. Check your internet speed and try again. If you’re using a VPN, please turn it off.
  • Log Snippet:
    {"errorMsg":"Could not get result from torus nodes \n ","errorStack":"Error: Could not get result from torus nodes \n \n    at _ (https://cyan.openlogin.com/v4/js/callback.fc9f8db8.js:1:13049)...}
    

Custom Authentication Details:

Next Steps:

  1. Please ensure your internet connection is stable.
  2. If you are using a VPN, try disabling it and see if the problem persists.
  3. If you continue facing the issue, it would be helpful to see your Web3Auth Initialisation & Login Code Snippet—you’ve included it, thank you!

Additional Information:

If you have any screenshots from the browser console or additional logs that could help us pinpoint the issue, it would be great to include them.

Let me know if there’s anything else I can assist you with!

Note: This response was generated by an AI bot and may require further verification. The Web3Auth support team has tracked this issue and will be responding as soon as possible.

SDK versions from package.json

    "@toruslabs/react-native-web-browser": "^1.1.0",
    "@web3auth/react-native-sdk": "^3.5.0",
  1. Please ensure your internet connection is stable.

Stable. Any devices using different internet environment can’t login. This error begins from yesterday.

  1. If you are using a VPN, try disabling it and see if the problem persists.

We don’t using VPN.

  1. If you continue facing the issue, it would be helpful to see your Web3Auth Initialisation & Login Code Snippet—you’ve included it, thank you!

The iOS/Android apps have been already released on the Apple/Google store for some time. But our customers can’t login the app from yesterday.

Upgrading Base plan to Growth plan fixes this.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.

Hey @moti, sorry the issue was not properly tracked by the bot. Just reaching out to know if the issue is resolved?