Számos módja van az UUID létrehozásának a Node.js-ben, de miért válasszuk az egyiket a másik helyett? Íme, miért.
Az univerzálisan egyedi azonosító (UUID) egy 128 bites karakterlánc, amelyet adatok címkézésére és elérésére használhat. A Node.js használatával könnyen létrehozhat UUID-ket többféle megközelítéssel.
Az UUID-k hatékonyak az egyedi azonosításhoz, mivel nagyon kicsi az esélye annak, hogy ugyanazt az azonosítót találják. Ez azt is jelenti, hogy önállóan generálhat UUID-t anélkül, hogy összevetné a központi adatbázissal. Az UUID-k nagymértékben méretezhetők.
A kriptomodul használata
A beépített kriptomodul in Node biztosítja a randomUUID() metódust az UUID-k generálásához.
const crypto = igényelnek("kripto")
const uuid = crypto.randomUUID()
Megelőzni randomUUID() ne használja a gyorsítótárat az UUID generálása során, állítsa be letiltja az EntropyCache-t igaz, így:
const uuid = crypto.randomUUID({ letiltja az EntropyCache-t: igaz })
Az uuid csomag használata
A kriptomodullal ellentétben a uuid csomag egy harmadik fél npm modul. A telepítéshez futtassa a következő parancsot.
npm install uuid
Az uuid segítségével különböző azonosítóverziókat hozhat létre:
- Az 1. és 4. verzió véletlenszerűen generált egyedi azonosítót generál.
- A 3-as és 5-ös verzió egyedi azonosítót generál egy névtérből és névből.
Ez a példa bemutatja, hogyan hozhat létre 4-es verziójú UUID-t:
const {v4: uuidv4} = igényelnek("uuid")
const id = uuidv4()
Nano ID használata
Nano ID egy másik NPM-csomag is, amelyet UUID-k generálására használnak a Node-ban. Bár majdnem ugyanúgy működik, mint az uuid csomag, van néhány különbség:
- A Nano ID 36 szimbólumot tartalmaz 21 helyett.
- A Nano ID kétszer gyorsabb, mint az uuid.
- A Nano ID négyszer kisebb, mint az uuid. Azonosítói 483 bájt helyett 130 bájtot tartalmaznak.
Használja a következő kódot a nanoazonosító létrehozásához:
const { nanoid } = igényelnek("nanoid")
const id = nanoid()
A Nano ID jobb, mint az uuid?
Legalább három módszer használható UUID létrehozására a Node-ban: a beépített titkosítási modul, valamint a harmadik féltől származó uuid és Nano ID csomagok. Ha külső csomagot szeretne használni, fontolja meg a Nano ID-t. Kisebb és sokkal gyorsabb, mint az uuid.