Existuje několik způsobů, jak generovat UUID v Node.js, ale proč vybírat jeden přes druhý? Zde je důvod.
Univerzálně jedinečný identifikátor (UUID) je 128bitový znakový řetězec, který můžete použít k označení a přístupu k datům. Pomocí Node.js můžete snadno vytvořit UUID pomocí několika přístupů.
UUID jsou výkonné pro jedinečnou identifikaci, protože šance na setkání se stejným ID je velmi malá. To také znamená, že můžete generovat UUID autonomně bez křížové kontroly s centrální databází. UUID jsou vysoce škálovatelné.
Pomocí kryptomodulu
Vestavěný kryptografický modul v Node poskytuje metodu randomUUID() pro generování UUID.
konst krypto = vyžadovat("krypto")
konst uuid = crypto.randomUUID()
Aby se zabránilo randomUUID() z používání mezipaměti během generování UUID, nastavte vypnout EntropyCache pravda, takhle:
konst uuid = crypto.randomUUID({ vypnout EntropyCache: skutečný })
Pomocí balíčku uuid
Na rozdíl od krypto modulu,
balíček uuid je třetí stranou modul npm. Chcete-li jej nainstalovat, spusťte následující příkaz.npm install uuid
uuid vám umožňuje generovat různé verze ID:
- Verze 1 a 4 generují jedinečné náhodně generované ID.
- Verze 3 a 5 generují jedinečné ID z oboru názvů a názvu.
Tento příklad ukazuje, jak můžete vygenerovat UUID verze 4:
konst {v4: uuidv4} = vyžadovat("uuid")
konst id = uuidv4()
Pomocí Nano ID
Nano ID je také další balíček NPM používaný ke generování UUID v Node. I když funguje téměř stejně jako balíček uuid, existují určité rozdíly:
- Nano ID obsahuje 36 symbolů místo 21.
- Nano ID je dvakrát rychlejší než uuid.
- Nano ID je čtyřikrát menší než uuid. Jeho identifikátory obsahují 130 bajtů místo 483 bajtů.
Pro vygenerování Nano ID použijte následující kód:
konst { nanoid } = vyžadovat("nanoid")
konst id = nanoid()
Je Nano ID lepší než uuid?
Existují alespoň tři metody, které můžete použít ke generování UUID v Node: vestavěný krypto modul a balíčky třetích stran uuid a Nano ID. Pokud chcete použít externí balíček, zvažte Nano ID. Je menší a mnohem rychlejší než uuid.