Firebase:此域名未经授权

Kai*_*ais 32 mobile oauth cors firebase

我正在使用最新的Firebase JS api(来自firebase.google.com的 API )到我的Ionic/cordova应用程序,我曾经通过在index.html文件中插入代码来导入它:<script src="https://www.gstatic.com/firebasejs/3.0.0/firebase.js"></script>.这就是我用来在controllers.js中初始化Firebase的方式(我正在使用AngularJS):

firebase.initializeApp(config);
Run Code Online (Sandbox Code Playgroud)

但是,在localhost上启动应用程序到我的浏览器后:我总是得到以下错误:

错误:此域未获授权用于Firebase项目的OAuth操作.从Firebase控制台编辑授权域列表.

firebase.js:71:1333

Kai*_*ais 33

我通过在不同的Web浏览器中使用localhost而不是127.0.0.1解决了这个问题.

此外,对于遇到相同问题的用户,他们需要确保他们的域已经存在于"OAuth重定向域"中,方法是在控制台"Auth"选项卡上进入"SETUP SIGN IN METHOD".

  • 哦,他们将此设置移动到"Auth"部分的"登录方法"子部分.谢谢! (4认同)

Sul*_*zat 18

在Firebase控制台Auth->授权域中

在此处输入图片说明


必须相等(在Google云控制台-> API和服务->凭据中):

在此处输入图片说明


必须等于(在api配置中):

在此处输入图片说明


isw*_*wak 9

在尝试了上面列出的所有选项以及其他有关使用FireBase oAuth的网站后,对我有用的解决方案如下:

  1. 登录https://console.cloud.google.com
  2. 转到API和服务>凭据

在此输入图像描述

在此处,找到您在连接到FireBase的应用中使用的API密钥

  1. 现在将您的自定义域添加到HTTP Referrers

在此输入图像描述

在此输入图像描述

对于android或ios或在所有三种媒体上使用您的应用程序,您需要为每种媒体创建API密钥.

  • 对于某些人的其他修补程序https://github.com/angular/angularfire2/issues/1444,似乎对于添加到FireBase安全性的每个域,Auth部分也必须手动添加到Google控制台API和服务 (2认同)

The*_*ist 7

确保配置中的"authDomain"与firebase控制台中的"authDomain"匹配.如果您在localhost上运行该应用程序,请确保它已设置为localhost,并且您的firebase控制台上存在localhost.

验证 - >登录方法 - > OAuth重定向域

var config = {
    apiKey: "...",
    authDomain: "...", // this should match the one on your firebase console
    databaseURL: "...",
    storageBucket: "",
};
firebase.initializeApp(config);
Run Code Online (Sandbox Code Playgroud)


Shu*_*rda 7

Firebase 现在默认将 localhost 作为授权域,但如果您在自定义域中遇到此问题,这里有一个快速解决方案。

  • 转到 Google 控制台“身份验证”选项卡 > 设置 > 授权域
  • 添加您的域名

在此输入图像描述

(PS - 关于版本,我在 React 上使用 Firebase 9.9.3。)


atb*_*ker 6

Firebase 用户

对我来说,错误的根源是该域未添加到 firebase 控制台中。以下是 Firebase 控制台中的图像,用于为您的网站添加自定义域: Firebase 控制台