使用firebase Auth uid作为mongoDB中的用户文档_id

cod*_*ger 3 mongoose mongodb

我有用户集合并想使用 Firebase uid 作为文档 _id ,

let _id = new ObjectID('Firebase Auth uid'); // Error Error: Argument passed in must be a single String of 12 bytes or a string of 24 hex
  let val = Object.assign(req.body, {
       _id: _id,
  });
  const user = new User(val);

  // Save User in the Collection
  return user.save();
Run Code Online (Sandbox Code Playgroud)

例如:Firebase Uid =5w9WnBiUPdT2wh7bsarYBQLQDqa2

如果我直接通过而不使用new ObjectID('Firebase Auth uid');猫鼬返回

失败:_id:对于路径“_id”处的值“ThobO6kTv6aMHUa4UN3nBjkCgNb2”,转换为 ObjectID 失败

Joe*_*Joe 5

ObjectID是一个 24 字节值,构造函数需要一个十六进制字符串

如果您计划使用字符串作为 _id 值,请在架构中显式_id声明String

    const schema = new mongoose.Schema({
      _id: String
    });
Run Code Online (Sandbox Code Playgroud)