如何使用生成的 uuid v4 创建 firebase 文档的重复证明?
how duplicate proof is to create a firebase document with the generated uuid v4?
我正在开发一个应用程序,它将把文档注入到 firestore 数据库中,这些文档将具有由 uuid v4 生成的 ID 问题是 2 个用户是否可以使用不同浏览器创建具有相同 ID 的相同文档?因为 uuid 函数是一样的?如果可能发生重复,它将覆盖某人的数据!如果 uuid 不是按时间戳生成 id。
否则明智的 2 个用户将有相同的参考,这也是非常糟糕的情况! npm uuid 可以用于此目的吗?
import { v4 as uuidv4 } from 'uuid';
const id = uuidv4();
如果您想在实际添加文档之前获取要添加到 Firestore 的文档的 ID,请查看 adding a document:
上的 Firebase 文档的这一部分
In some cases, it can be useful to create a document reference with an auto-generated ID, then use the reference later. For this use case, you can call doc()
:
import { collection, doc, setDoc } from "firebase/firestore";
// Add a new document with a generated id
const newCityRef = doc(collection(db, "cities"));
// later...
await setDoc(newCityRef, data);
这是 SDK v9 或更高版本的 JavaScript 代码。其他语言的代码可以在上面的 link 中找到。
我正在开发一个应用程序,它将把文档注入到 firestore 数据库中,这些文档将具有由 uuid v4 生成的 ID 问题是 2 个用户是否可以使用不同浏览器创建具有相同 ID 的相同文档?因为 uuid 函数是一样的?如果可能发生重复,它将覆盖某人的数据!如果 uuid 不是按时间戳生成 id。 否则明智的 2 个用户将有相同的参考,这也是非常糟糕的情况! npm uuid 可以用于此目的吗?
import { v4 as uuidv4 } from 'uuid';
const id = uuidv4();
如果您想在实际添加文档之前获取要添加到 Firestore 的文档的 ID,请查看 adding a document:
上的 Firebase 文档的这一部分In some cases, it can be useful to create a document reference with an auto-generated ID, then use the reference later. For this use case, you can call
doc()
:import { collection, doc, setDoc } from "firebase/firestore"; // Add a new document with a generated id const newCityRef = doc(collection(db, "cities")); // later... await setDoc(newCityRef, data);
这是 SDK v9 或更高版本的 JavaScript 代码。其他语言的代码可以在上面的 link 中找到。