javascript - 如何在不登录 firebase/js 的情况下注册用户

标签 javascript firebase firebase-authentication

<分区>

我在管理员网站上工作,实际上我需要知道如何在不丢失我的管理员注册的情况下注册用户,因为我需要让只有管理员可以创建用户帐户。 我正在使用 firebase 电子邮件/Pw 身份验证。

const CreateCh = document.querySelector('#CreateChaufeurs');

CreateCh.addEventListener('submit',(e)=>{
    e.preventDefault();

//get chaufeur info
const email = CreateCh['exampleEmail11'].value;
const password = CreateCh['examplePassword11'].value;
const Fname = CreateCh['Fname'].value;
const Address = CreateCh['exampleAddress'].value;
const Tel = CreateCh['exampleAddress2'].value;
const Ville = CreateCh['exampleCity'].value;
const Etat = CreateCh['exampleState'].value;
const Cp = CreateCh['exampleZip'].value;
const AGE = CreateCh['AGE'].value;
console.log(password, email, Fname,AGE,Address,Tel,Ville,Etat,Cp );
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;
    // ...
  });
});

但在创建帐户后,它会自动使用该新帐户登录。

最佳答案

您可以初始化一个单独的 Firebase SDK 实例来处理您所有的帐户创建请求。

在最简单的形式中,您可以使用:

let authWorkerApp = firebase.initializeApp(firebase.app().options, 'auth-worker');
let authWorkerAuth = firebase.auth(authWorkerApp);
authWorkerAuth.setPersistence(firebase.auth.Auth.Persistence.NONE); // disables caching of account credentials

authWorkerAuth.createUserWithEmailAndPassword(email, password).catch(function(error) {
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;
    // ...
});

如果您遇到诸如Firebase app 'auth-worker' is already initialised 之类的错误,您可以将其包装在一个安全的 getter 中以避免此类错误:

function getFirebaseApp(name, config) {
    let foundApp = firebase.apps.find(app => app.name === name);
    return foundApp ? foundApp : firebase.initializeApp(config || firebase.app().options, 'auth-worker');
}

let authWorkerApp = getFirebaseApp('auth-worker');

关于javascript - 如何在不登录 firebase/js 的情况下注册用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59499570/

相关文章:

javascript - 在组件中生成随机值时的 Next.js/React 警告

javascript - 从 node.js 中的平面数组构建树数组

javascript - react 按钮不会弹出链接页面

javascript - CSS flex 盒 : flex item grow when changing another flex items position

firebase - 一个域上的多个项目

Android FirebaseUI Auth - 如何重新认证?

firebase - 无法对 flutter 中的对象列表进行排序

ios - 使用 Swift 3 检查用户身份验证错误代码

android - 我有适配器问题。任何人都可以知道解决方案

javascript - 在 Firebase 中处理关联帐户