キャッチされない例外:エラー:この操作は、このアプリケーションが実行されている環境ではサポートされていません。 「location.protocol」はhttp、https、またはchrome-extensionである必要があり、Webストレージが有効になっている必要があります。
var config = {
apiKey: "*****",
authDomain: "******",
};
firebase.initializeApp(config);
var provider = new firebase.auth.GoogleAuthProvider();
provider.addScope('profile');
provider.addScope('https://www.googleapis.com/auth/drive');
firebase.auth().signInWithRedirect(provider);
alert(1);
}
キャッチされない例外:エラー:この操作は、このアプリケーションが実行されている環境ではサポートされていません。 「location.protocol」はHTTP、HTTPS、またはchrome-extensionである必要があり、Webストレージが有効になっている必要があります。
最近、私も同じエラーに直面しました。
このファイルは、Webサーバーなしでブラウザで直接開いています。ファイルを直接開くと、Firebase認証は機能しません。問題が解決するはずのWebサーバーを介してHTMLをロードしてみてください。このバグの背後にある理由は、認証サービスを使用するときにWebストレージを使用するためです。 WebブラウザなしでHTMLファイルを直接開くと、Webストレージが機能しません
たとえば、Apacheを使用し、ブラウザで http://localhost/filename.html のようにApacheを介して開きます。
このコードを試してください。動作するはずです。
var config = {
apiKey: "*****",
authDomain: "******",
};
firebase.initializeApp(config);
var provider = new firebase.auth.GoogleAuthProvider();
provider.addScope('profile');
provider.addScope('https://www.googleapis.com/auth/drive');
firebase.auth().signInWithRedirect(provider);
//add the code below to your previous lines
firebase.auth().getRedirectResult().then(function(authData) {
console.log(authData);
}).catch(function(error) {
console.log(error);
});