0

以下是代码示例。目标是创建一个具有电子邮件和密码的用户,用于特定的tenantId

import { Observable } from 'rxjs';
import { initializeApp } from 'firebase/app';

const app = initializeApp(JSON.parse(process.env.FIREBASE_CONFIG));
const firebaseAuth = getAuth();

firebaseAuth.tenantId = "foo";

const createUserObserver = (email, pass) => {
 const observer = new Observable(subscriber => {
  createUserWithEmailAndPassword(firebaseAuth, email, pass)
   .then((userCredential) => {
     subscriber.next(userCredential);
     subscriber.complete();
   })
   .catch((error) => {
     subscriber.error(error);
     subscriber.complete();
    });
  });
  
  return observer;
}

const createUser = () => {
 createUserObserver("foo@bar.com", "123abc*")
  .subscribe({
    next: v => handleUserCreated(v),
    error: e => handleError(e),
    complete: () => console.log('Completed')
  });
}

createUser();

一切顺利,我得到了正确的用户凭据,并且返回的用户对象也有正确tenantId的。但是,chrome 控制台错误抛出auth/tenant-id-mismatch. 到目前为止,我在该项目中只有一个租户设置,也没有其他租户 ID。我也在 firebaseAuth 对象中记录了租户 ID,这似乎正是tenantId我从 firebase 收到的确切信息。

我似乎无法追踪以下错误的来源。

在此处输入图像描述

4

0 回答 0