Er zijn verschillende manieren om een UUID in Node.js te genereren, maar waarom zou je de ene boven de andere kiezen? Dit is waarom.
Een Universally Unique Identifier (UUID) is een tekenreeks van 128 bits die u kunt gebruiken om gegevens te labelen en te openen. Met Node.js kunt u eenvoudig UUID's maken met verschillende benaderingen.
UUID's zijn krachtig voor unieke identificatie omdat de kans dat u dezelfde ID tegenkomt erg klein is. Dit betekent ook dat u autonoom een UUID kunt genereren zonder kruiscontroles met een centrale database. UUID's zijn zeer schaalbaar.
De cryptomodule gebruiken
de ingebouwde crypto-module in Node biedt de methode randomUUID() om UUID's te genereren.
const crypto = vereisen("crypto")
const uuid = crypto.randomUUID()
Voorkomen willekeurigUUID() van het gebruik van de cache tijdens het genereren van UUID, set EntropyCache uitschakelen om waar te zijn, zoals dit:
const uuid = crypto.randomUUID({ EntropyCache uitschakelen: WAAR })
Het uuid-pakket gebruiken
In tegenstelling tot de cryptomodule, is de uuid pakket is een derde partij npm-module. Voer de volgende opdracht uit om het te installeren.
npm installeer uuid
uuid stelt u in staat om verschillende ID-versies te genereren:
- Versie 1 en 4 genereren een willekeurig gegenereerde unieke ID.
- Versie 3 en 5 genereren een unieke ID uit een naamruimte en naam.
Dit voorbeeld laat zien hoe u een versie 4 UUID kunt genereren:
const {v4: uuidv4} = vereisen("uuid")
const id = uuidv4()
Nano-ID gebruiken
Nano-ID is ook een ander NPM-pakket dat wordt gebruikt om UUID's in Node te genereren. Hoewel het bijna hetzelfde werkt als het uuid-pakket, zijn er enkele verschillen:
- De Nano ID bevat 36 symbolen in plaats van 21.
- Nano ID is twee keer sneller dan uuid.
- Nano ID is vier keer kleiner dan uuid. De identifiers bevatten 130 bytes in plaats van 483 bytes.
Gebruik de volgende code om een Nano-ID te genereren:
const { nanoid } = vereisen("nanoïde")
const id = nanoid()
Is Nano ID beter dan uuid?
Er zijn ten minste drie methoden die u kunt gebruiken om een UUID in Node te genereren: de ingebouwde cryptomodule en de uuid- en Nano ID-pakketten van derden. Wil je een extern pakket gebruiken, overweeg dan Nano ID. Het is kleiner en veel sneller dan uuid.