Firebase仅在设备上导致“Auth / network-request-failed”

时间:2016-12-19 18:35:49

标签: angularjs cordova firebase ionic-framework firebase-authentication

我有一个使用Firebase身份验证的Cordova / ionic / angular应用程序,可以在浏览器和模拟器中完美运行。但是,在实际设备上,对firebase.auth()的调用将返回错误代码" auth / network-request-failed",表示网络错误(例如超时,中断连接或无法访问的主机)发生了。这种情况发生在我运行设备调试时,在我的情况下,Visual Studio,以及我在设备(Android手机)上安装应用程序并运行它时。

firebase代码是:

<script src="https://www.gstatic.com/firebasejs/3.6.1/firebase.js"></script>

我已经在模板中用简单的<form>替换了<div>内容,因为我读了here它可能会导致重新提交,从而触发网络错误。我已尝试使用<button>指令和<a>指令的按钮。没有不同。除非角度或离子做一些混淆指令的魔法,否则它应该是干净的,但你永远不会知道。

在发布here时,还包含以下安全元标记作为问题的可能解决方案:

<meta "content_security_policy":"script-src 'self' https://apis.google.com https://www.googleapis.com https://securetoken.googleapis.com; object-src 'self'" , "permissions": [ "https://*/*", "activeTab" ] >

js代码应该不是问题,因为应用程序在浏览器中正常工作但我仍然包括它:

firebase.auth().signInWithEmailAndPassword(email, password)
   .then(() => { ... }
   .catch(error => {
      console.log(error.code, error.message);
   });

最后,我附加了onAuthStateChanged观察员。观察者确实在设备上初始化但它永远不会触发 - 当然 - 因为auth()调用返回错误。

我做错了什么?任何帮助都非常感谢。

0 个答案:

没有答案