如何在 Firebase 中调试身份验证?

目前,当我将身份验证 signinflow 设置为重定向时,登录过程没有完成,尽管它确实转到了 Google 或 Facebook 登录屏幕。但是,当我将登录流程设置为弹出窗口时,身份验证过程会按预期进行。我很好奇的是如何在 Firebase 中调试身份验证?控制台显然只显示前端 javascript 相关代码,而 firebase 控制台中的 DebugView 在我登录或注销时不会显示任何内容,无论是通过弹出窗口还是重定向。找出身份验证错误与重定向登录流程模式相关的步骤是什么?


我的app.js代码如下:


firebaseUI.start('#firebaseui-auth-container', {

    signInFlow: 'redirect',

    signInSuccessUrl: 'http://www.bing.com',

    signInOptions: [

      firebaseDB.firebase_.auth.EmailAuthProvider.PROVIDER_ID,

      firebaseDB.firebase_.auth.GoogleAuthProvider.PROVIDER_ID,

      firebaseDB.firebase_.auth.FacebookAuthProvider.PROVIDER_ID

    ],

  });


  firebase.auth().onAuthStateChanged(user => {

    if (user) {

      console.log(user.displayName);

    } else {

      console.log('no user signed in');

    }

  });


当年话下
浏览 82回答 1
1回答

慕运维8079593

想到几个提示:(1)仔细查看浏览器上的 JavaScript 控制台日志。JavaScript 因“吐出一条错误消息(在您通常看不到它的地方……)并继续前进”而 臭名昭著。(2)仔细查看 Firebase 和 Web 服务器的服务器端日志。 感兴趣的序列可能涉及几个不同软件之间的一次或多次“往返”,您需要有条不紊地、系统地重建究竟发生了什么以及以什么顺序发生。“整个时间线。”(3) “不要 假设!” 正如他们所说,“信任,但要验证”。不要根据实际问题的任何“假设”采取行动——例如,在这里您可能“假设”这是“Firebase 身份验证”中的问题。假设会让你“追白兔”很长时间,结果却空手而归。 (相信我这个......)您可能不会从“TCP/IP 转储程序”(例如...)中获得太多有用的信息,tcpdump因为通信可能已加密。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript