Ionic Framework and Firebase 3.x version: This dom

2019-03-09 05:11发布

问题:

I am developing an iOS app using Ionic Framework and Firebase. I have updated Firebase SDK to version 3.x in my project. What I am trying to do is to authenticate the user with Facebook on a real device. Everything works fine when I test it on a browser. However, whenever I run on a real iOS device, I always get the following error:

This domain is not authorized for OAuth operations for your Firebase project. Edit the list of authorized domains from the Firebase console.

On Firebase, I have already added "localhost" and "127.0.0.1" to my authorized domain list. So I am not sure what to do right now.

For your information, I do not use WKWebView in my project.

Does anybody here can tell me how I can solve this? Please advice.

回答1:

The error "This domain is not authorized for OAuth operations for your Firebase project. Edit the list of authorized domains from the Firebase console." only prevents signInWithPopup() signInWithRedirect() linkWithPopup() and linkWithRedirect() operations from working. Every other function, including signInWithCredential(), should work.

I believe that you are seeing this error because ionic apps do not have a real domain, and this is a requirement for the 4 functions I mentioned above.

The solution to your problem would be to ignore the error (it is just informational) and not use signInWithPopup signInWithRedirect linkWithPopup or linkWithRedirect. Instead, use a library for OAuth such as ngCordovaOAuth and then use auth().signInWithCredential(...) (see example instructions for Twitter here).



回答2:

i have same issue but i solved it by creating new firebase project.



回答3:

Ok, here is my temporary solution:

I import both Firebase SDK v.2.x and Firebase SDK 3.x in my ionic project. I use version 2.x for Facebook authentication on iOS then I use version 3.x to get access to all new features on Firebase such as Storage and so on.

Hopes this helps.