Javascript Angular(使用Firebase)应用程序部署到Firebase问题
我已经通过Thinkster IO教程创建了我的第一个angular应用程序之一,并希望将该应用程序部署到Firebase。我已经运行了Javascript Angular(使用Firebase)应用程序部署到Firebase问题,javascript,angularjs,firebase,firebase-hosting,Javascript,Angularjs,Firebase,Firebase Hosting,我已经通过Thinkster IO教程创建了我的第一个angular应用程序之一,并希望将该应用程序部署到Firebase。我已经运行了firebase init和firebase deploy,两者都成功运行 从firebase打开应用程序时,页面会加载,但不会显示任何内容。打开JS控制台时有三个错误 错误为: 1)[阻止]位于“”的页面已通过HTTPS加载,但运行了来自“”的不安全内容:此内容也应通过HTTPS加载 2)未捕获引用错误:未定义Firebase angularFire.js:1
firebase init
和firebase deploy
,两者都成功运行
从firebase打开应用程序时,页面会加载,但不会显示任何内容。打开JS控制台时有三个错误
错误为:
1)[阻止]位于“”的页面已通过HTTPS加载,但运行了来自“”的不安全内容:此内容也应通过HTTPS加载
2)未捕获引用错误:未定义Firebase angularFire.js:17
3)未捕获错误:[$injector:unpr]未知提供程序:angularFireAuthProvider您得到的第一个错误很可能导致所有其他错误,因此让我们重点关注: [已阻止]通过HTTPS加载“”处的页面,但运行了来自“”的不安全内容:此内容也应通过HTTPS加载 还记得IE曾经询问“此页面包含安全和非安全内容的混合。是否要显示非安全内容?”您在上面的错误消息中看到的是现代的等效内容。除了用户不再收到问题外,非安全部分被简单地阻止 Firebase托管服务器通过HTTPS提供所有静态内容。很可能您的本地开发系统没有设置HTTPS,因此您正在通过常规HTTP访问相同的内容 因此,在本地系统上加载Firebase客户端库时,HTML中有一个脚本标记,如下所示:
<!-- don't do this -->
<script src="http://static.firebase.com/v0/firebase.js"></script>
不幸的是,一旦将应用程序部署到Firebase主机,它将无法工作。它将通过HTTPS为您的HTML页面提供服务,然后拒绝通过HTTP包含JavaScript
因此,要从Firebase托管服务应用程序,您的脚本标记应如下所示:
<!-- don't do this -->
<script src="https://static.firebase.com/v0/firebase.js"></script>
这通常是您在部署HTML时会遇到各种讨厌的部署脚本的地方。幸运的是,这种情况下不需要这样做,因为有一个k可以使脚本标记在两个位置都工作。事实证明,您可以将协议从URL中删除,在这种情况下,浏览器将只使用与加载页面时使用的协议相同的协议
<script src="//static.firebase.com/v0/firebase.js"></script>
通过像这样包含脚本,您的本地开发人员环境将通过HTTP加载它,而Firebase主机将使用HTTPS包含它。您收到的第一个错误可能会导致所有其他错误,因此让我们重点关注: [已阻止]通过HTTPS加载“”处的页面,但运行了来自“”的不安全内容:此内容也应通过HTTPS加载 还记得IE曾经询问“此页面包含安全和非安全内容的混合。是否要显示非安全内容?”您在上面的错误消息中看到的是现代的等效内容。除了用户不再收到问题外,非安全部分被简单地阻止 Firebase托管服务器通过HTTPS提供所有静态内容。很可能您的本地开发系统没有设置HTTPS,因此您正在通过常规HTTP访问相同的内容 因此,在本地系统上加载Firebase客户端库时,HTML中有一个脚本标记,如下所示:
<!-- don't do this -->
<script src="http://static.firebase.com/v0/firebase.js"></script>
不幸的是,一旦将应用程序部署到Firebase主机,它将无法工作。它将通过HTTPS为您的HTML页面提供服务,然后拒绝通过HTTP包含JavaScript
因此,要从Firebase托管服务应用程序,您的脚本标记应如下所示:
<!-- don't do this -->
<script src="https://static.firebase.com/v0/firebase.js"></script>
这通常是您在部署HTML时会遇到各种讨厌的部署脚本的地方。幸运的是,这种情况下不需要这样做,因为有一个k可以使脚本标记在两个位置都工作。事实证明,您可以将协议从URL中删除,在这种情况下,浏览器将只使用与加载页面时使用的协议相同的协议
<script src="//static.firebase.com/v0/firebase.js"></script>
通过像这样包含脚本,您的本地开发人员环境将通过HTTP加载它,而Firebase主机将使用HTTPS包含它。您收到的第一个错误可能会导致所有其他错误,因此让我们重点关注: [已阻止]通过HTTPS加载“”处的页面,但运行了来自“”的不安全内容:此内容也应通过HTTPS加载 还记得IE曾经询问“此页面包含安全和非安全内容的混合。是否要显示非安全内容?”您在上面的错误消息中看到的是现代的等效内容。除了用户不再收到问题外,非安全部分被简单地阻止 Firebase托管服务器通过HTTPS提供所有静态内容。很可能您的本地开发系统没有设置HTTPS,因此您正在通过常规HTTP访问相同的内容 因此,在本地系统上加载Firebase客户端库时,HTML中有一个脚本标记,如下所示:
<!-- don't do this -->
<script src="http://static.firebase.com/v0/firebase.js"></script>
不幸的是,一旦将应用程序部署到Firebase主机,它将无法工作。它将通过HTTPS为您的HTML页面提供服务,然后拒绝通过HTTP包含JavaScript
因此,要从Firebase托管服务应用程序,您的脚本标记应如下所示:
<!-- don't do this -->
<script src="https://static.firebase.com/v0/firebase.js"></script>
这通常是您在部署HTML时会遇到各种讨厌的部署脚本的地方。幸运的是,这种情况下不需要这样做,因为有一个k可以使脚本标记在两个位置都工作。事实证明,您可以将协议从URL中删除,在这种情况下,浏览器将只使用与加载页面时使用的协议相同的协议
<script src="//static.firebase.com/v0/firebase.js"></script>
通过像这样包含脚本,您的本地开发环境将通过HTTP加载它,而Firebase宿主将使用HTTPS包含它。