【发布时间】:2019-05-22 05:41:13
【问题描述】:
我正在尝试为应用内的用户提供额外的身份验证。已经实现了电子邮件/密码身份验证,我还想添加 Facebook/Google 身份验证。
我试过firebaseui:
const ui = new firebaseui.auth.AuthUI(firebase.auth());
ui.start(selector, {
callbacks: {
signInSuccessWithAuthResult(authResult) {
that.handleAuthentication(authResult);
return false;
},
},
credentialHelper: firebaseui.auth.CredentialHelper.NONE,
signInFlow: 'redirect',
signInOptions: [
{
provider: firebase.auth.EmailAuthProvider.PROVIDER_ID,
},
{
provider: firebase.auth.GoogleAuthProvider.PROVIDER_ID,
},
{
provider: firebase.auth.FacebookAuthProvider.PROVIDER_ID,
},
],
});
虽然 UI 在传递的 selector 中正确呈现,但我无法打开 Google/Facebook 身份验证,因为它会显示此消息:
运行此应用程序的环境不支持此操作。 “location.protocol”必须是 http、https 或 chrome-extension,并且必须启用网络存储。
这是正确的,因为location.protocol 等于file:。
我的问题是 - 我怎样才能在 Electron 应用程序中使用 Facebook/Google 身份验证?
【问题讨论】:
-
Electron 应用程序中的浏览器窗口是否能用于此目的?
-
@AbhijitSrivastava 不幸的是没有,但我所做的只是创建了一个用于身份验证的简单网站,并使用 websockets 将应用程序与其连接。
-
好的,谢谢,我希望有一天谷歌能把它包括进来。
标签: javascript firebase firebase-authentication electron