我正在使用最新的Firebase JS api(来自firebase.google.com的那个)进入我的Ionic / cordova应用程序,我曾经通过在index.html文件中插入该代码来导入它:<script src="https://www.gstatic.com/firebasejs/3.0.0/firebase.js"></script>
。这就是我用来在controllers.js中初始化Firebase的方法(我使用的是AngularJS):
firebase.initializeApp(config);
但是,在localhost上启动应用程序到我的浏览器之后:我总是遇到以下错误:
错误:此域名未获得OAuth操作授权 Firebase项目。从中编辑授权域列表 Firebase控制台。
firebase.js:71:1333
答案 0 :(得分:27)
我通过在不同的Web浏览器中使用localhost而不是127.0.0.1解决了这个问题。
此外,对于遇到相同问题的用户,他们需要确保他们的域已经存在于“OAuth重定向域”中,方法是转到控制台“Auth”选项卡上的“SETUP SIGN IN METHOD”。
答案 1 :(得分:23)
我错过了在授权域名列表中添加我的域名。
访问https://console.firebase.google.com/
选择您的应用程序并转到左侧菜单“Auth”
选择标签“登录方法”
在“OAuth重定向域”
中添加您的域名
答案 2 :(得分:7)
在尝试了上面列出的所有选项以及其他有关使用FireBase oAuth的网站后,对我有用的解决方案如下:
在此处,找到您在连接到FireBase的应用中使用的API密钥
答案 3 :(得分:6)
确保&#34; authDomain&#34;在您的配置中匹配您的firebase控制台中的那个。如果您在localhost上运行应用程序,请确保它已设置为localhost,并且您的firebase控制台上存在localhost。
验证 - &gt;方法 - &gt; OAuth重定向域
var config = {
apiKey: "...",
authDomain: "...", // this should match the one on your firebase console
databaseURL: "...",
storageBucket: "",
};
firebase.initializeApp(config);
答案 4 :(得分:4)
答案 5 :(得分:1)
答案 6 :(得分:0)
如果您使用的是Google Chrome浏览器,则可能会发现Identity Toolkit API存在问题 DISABLE。您需要在Google云项目中启用此API才能在Firebase项目中获得OAUTH服务。
答案 7 :(得分:0)
对于在Heroku中遇到此问题的人:
确保将 authDomain 属性保持与从Firebase获得的值相同。
请勿将其更改为当前的Heroku域。
答案 8 :(得分:0)
以上所有答案均不适用于我,因为我已在“授权域”列表中拥有本地主机。对我来说,问题是API密钥不正确,我必须以某种方式从其中删除字符之一。当我从signInWithPopup
更改为signInWithRedirect
时,我得到了更具描述性的(或更确切地说,不是误导性的)错误消息。当API密钥过期时,可能还会发生相同的问题。
答案 9 :(得分:0)
重点是.. 您必须将 yourprojectid.firebaseapp.com 域添加到授权域中.. 不是您的真实域名。这对我有用。
答案 10 :(得分:-1)
并非特定于Android,但请检查actionCodeSettings
中的地址。
actionCodeSettings.url
必须正确并列入白名单。