You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Firefox中使用Google Firebase Authentication时出现auth/internal错误及脚本加载受限问题的解决方法

解决Firefox中Firebase Auth的auth/internal错误与脚本加载被拒问题

首先得明确,这个问题几乎都是Firefox的内容安全策略(CSP)限制或者SDK加载方式不对导致的——毕竟Firefox对第三方脚本的管控比Chrome要严格不少。我之前帮好几个开发者解决过类似的问题,给你整理几个靠谱的解决方案:

1. 检查并调整内容安全策略(CSP)

Firefox拒绝加载https://apis.google.com/js/api.js,大概率是你的页面CSP规则没允许这个域名的脚本。你需要在页面的meta标签或者服务器响应头里添加对应的允许规则:

  • 如果用meta标签配置,直接在HTML的<head>里加:
    <meta http-equiv="Content-Security-Policy" content="script-src 'self' https://apis.google.com https://www.gstatic.com;">
    
    注意:Firebase Auth不仅依赖apis.google.com,还需要加载gstatic.com的资源,所以两个域名都得加进去。如果你的代码里有inline脚本,可能还需要加'unsafe-inline'(但尽量避免,优先用nonce或哈希值来授权inline脚本)。

2. 改用Firebase官方推荐的SDK加载方式

别单独去加载api.js了,这不是Firebase Auth的正确打开方式。推荐用官方的模块化SDK或者完整SDK包:

模块化方式(推荐)

<script type="module">
  // 导入需要的Firebase模块
  import { initializeApp } from "https://www.gstatic.com/firebasejs/9.23.0/firebase-app.js";
  import { getAuth } from "https://www.gstatic.com/firebasejs/9.23.0/firebase-auth.js";

  // 你的Firebase项目配置
  const firebaseConfig = {
    apiKey: "YOUR_API_KEY",
    authDomain: "YOUR_AUTH_DOMAIN",
    // 其他配置项...
  };

  // 初始化应用
  const app = initializeApp(firebaseConfig);
  const auth = getAuth(app);
</script>

传统命名空间方式

<script src="https://www.gstatic.com/firebasejs/9.23.0/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/9.23.0/firebase-auth.js"></script>
<script>
  const firebaseConfig = { /* 你的配置 */ };
  firebase.initializeApp(firebaseConfig);
</script>

这种方式加载的都是Firebase官方托管的合规资源,不容易触发Firefox的安全限制。

3. 检查Firefox的隐私安全设置

有些用户开启了增强跟踪保护的严格模式,会直接阻止Google相关脚本加载。你可以临时测试一下:

  • 点击地址栏左侧的盾牌图标,选择「关闭增强跟踪保护」,刷新页面看看是否恢复正常。
  • 如果有效,你可以在Firefox的设置里给你的网站添加例外,允许加载Google的资源,避免每次都手动关闭。

4. 确认Firebase项目的授权域配置

别漏了这个基础操作!去Firebase控制台的「Authentication」→「设置」→「授权域」,把你当前网站的域名(比如https://your-site.com或者本地开发的http://localhost:3000)添加进去。如果域名不在授权列表里,Firebase Auth会直接抛出auth/internal错误。

最后调试小技巧

打开Firefox开发者工具(F12),切换到「控制台」,看看有没有更具体的错误提示——比如CSP会明确告诉你哪条规则阻止了资源加载,根据提示调整规则就行。另外记得用最新版本的Firebase SDK,旧版本可能存在兼容性问题。

内容的提问来源于stack exchange,提问作者BERENGENITA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 22:57:38