当前位置: 首页 > 面试题库 >

JavaScript Firebase淘汰当前用户

逄念
2023-03-14
问题内容

因此,我遇到了这样的问题:每次添加新用户帐户时,它都会踢出已登录的当前用户。我阅读了firebase api,并说:“
如果创建了新帐户,则该用户会自动登录 但是他们从没有说过避免这种情况的任何其他事情。

      //ADD EMPLOYEES
      addEmployees: function(formData){
        firebase.auth().createUserWithEmailAndPassword(formData.email, formData.password).then(function(data){
          console.log(data);
        });
      },

我是管理员,正在向我的网站添加帐户。如果我可以在不注销并登录到新帐户的情况下添加帐户,我会很高兴。任何方式我都可以避免这种情况?


问题答案:

这实际上是可能的。

但并非直接,做到这一点的方法是创建第二个auth引用,并使用该引用创建用户:

var config = {apiKey: "apiKey",
    authDomain: "projectId.firebaseapp.com",
    databaseURL: "https://databaseName.firebaseio.com"};
var secondaryApp = firebase.initializeApp(config, "Secondary");

secondaryApp.auth().createUserWithEmailAndPassword(em, pwd).then(function(firebaseUser) {
    console.log("User " + firebaseUser.uid + " created successfully!");
    //I don't know if the next statement is necessary 
    secondaryApp.auth().signOut();
});

如果您未指定用于操作的Firebase连接,则默认情况下将使用第一个。

编辑

对于新用户的实际创建,除了管理员之外,没有其他人或其他人可以在第二个auth引用中进行身份验证,因为创建帐户所需的只是auth引用本身。

以下内容未经测试,但需要考虑

您要做的事情就是将数据写入Firebase。通常的做法是用户可以编辑/更新自己的用户信息,因此当您使用第二个auth引用编写此信息时,它应该可以工作。但是,如果您具有该用户的角色或权限,请确保使用具有正确权限的auth引用进行编写。在这种情况下,主要身份验证是admin,第二个身份验证是新创建的用户。



 类似资料:
  • 1.自我介绍 2.react掌握的怎么样(完全没学过,开场就g了) 3.js数据类型,分别存储在哪里 4.怎么判断数据类型,不同方法之间的区别 5.怎么判断null类型 6.http缓存以及相关配置 7.no-cache和no-store的区别 8.http1.0/1.1/2.0区别 9.经典的同步任务宏任务微任务的输出顺序 10.js事件模型和事件委托 11.怎么中断事件捕获和事件冒泡 12.p

  • 门口等了10分钟,保安不让进,HR来了之后带到休息室,到面试时间了把你带到办公室,和面试官之间隔了张小桌子,距离一米,面试官人非常好,不给压力。 技术栈是golang,应该撞到枪口上了,面试官问了很多go有关的。 总的来说面的东西有三类,八股,项目,开放式问题。从中又延伸了很多,一共35分钟。 具体记不太清了,大概有以下问题: 1. TCP粘包问题,如何解决 2. go中channel的作用 3.

  • 本文向大家介绍Redis 淘汰策略有哪些?相关面试题,主要包含被问及Redis 淘汰策略有哪些?时的应答技巧和注意事项,需要的朋友参考一下 volatile-lru:从已设置过期时间的数据集(server. db[i]. expires)中挑选最近最少使用的数据淘汰。 volatile-ttl:从已设置过期时间的数据集(server. db[i]. expires)中挑选将要过期的数据淘汰。 vo

  • 简单介绍了Redis的内存淘汰策略。 Redis的参数用于指定 Redis 能使用的最大内存,既可以在 redis.conf 配置文件中设置(单位Byte),也可以在运行过程中通过 命令动态修改。 将 设置为,或者没有设置该参数,则表示不进行内存限制。但对32位系统来说有一个隐性的限制条件是最多使用 3GB 内存,64位系统则无限制。 当达到内存限制时(maxmemory),Redis 将尝试根据

  • 1.自我介绍 2.上一段实习的离职原因 3.为什么选择做前端 4.问项目 5.Vue3与Vue2的不同 6.响应式原理 7.组件通信的几种方式 8.盒模型,标准盒模型、怪异盒模型 9.Position属性的用法 10.JS事件机制 11.事件冒泡、怎样阻止冒泡行为 12.Flex布局,flex:1的含义 13.算法题:力扣(medium)738.单调递增的数字 当且仅当每个相邻位数上的数字 x 和

  • 我有一个使用bind通过knockout JS填充的表。我需要添加一个搜索和排序器,所以我试图实现引导表,但我无法让它与敲除一起工作。我在网上搜索过,但找不到任何相关信息。下面是我目前正在做的事情,任何帮助都将不胜感激。 击倒 表