问题:通过第三方应用程序内置浏览器(例如LINE,Twitter或Facebook Messenger)使用时,signInWithPopup
返回auth/popup-blocked
。 Firebase文档的解释是:
auth / popup-blocked:如果弹出窗口被浏览器阻止,通常在单击处理程序之外触发此操作时抛出。
触发此错误的典型顺序是:我的Web应用程序的链接发送到LINE,Twitter或Facebook Messenger。当用户使用移动设备并在那些应用中打开该链接时,将打开其内置浏览器。调用signInWithPopup
然后返回错误。在iOS和Android中,行为略有不同,但至少iOS / LINE组合会导致错误。
我正在使用Angular并构建一个Web应用程序。错误消息是来自Unable to establish a connection with the popup. It may have been blocked by the browser.
的firebase.js
-不是我自己的文字。
在普通浏览器中使用时,注册工作正常。
有什么想法为什么内置浏览器和signInWithPopup
不能一起使用?
最佳答案
Firebase身份验证应从某些用户交互(例如单击按钮)开始。这为我解决了问题。
关于firebase - 当通过移动设备中的内置浏览器使用时,Firebase signInWithPopup会阻止身份验证/弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39898356/