Există mai multe moduri de a genera un UUID în Node.js, dar de ce să alegeți unul peste celălalt? Iata de ce.
Un identificator unic universal (UUID) este un șir de caractere de 128 de biți pe care îl puteți utiliza pentru a eticheta și a accesa date. Folosind Node.js, puteți crea cu ușurință UUID-uri folosind mai multe abordări.
UUID-urile sunt puternice pentru identificarea unică, deoarece șansele de a întâlni același ID sunt foarte mici. Aceasta înseamnă, de asemenea, că puteți genera un UUID în mod autonom, fără a verifica încrucișarea cu o bază de date centrală. UUID-urile sunt foarte scalabile.
Folosind modulul cripto
Cel încorporat modul criptografic în Node oferă metoda randomUUID() pentru a genera UUID-uri.
const cripto = cere(„cripto”)
const uuid = crypto.randomUUID()
A preveni randomUUID() de la utilizarea memoriei cache în timpul generării UUID, setați dezactivați EntropyCache la adevarat, cam asa:
const uuid = crypto.randomUUID({ dezactivați EntropyCache: Adevărat })
Folosind pachetul uuid
Spre deosebire de modulul cripto, cel pachet uuid este o terță parte modulul npm. Pentru a-l instala, executați următoarea comandă.
npm install uuid
uuid vă permite să generați diferite versiuni de ID:
- Versiunile 1 și 4 generează un ID unic generat aleatoriu.
- Versiunile 3 și 5 generează un ID unic dintr-un spațiu de nume și un nume.
Acest exemplu arată cum puteți genera un UUID versiunea 4:
const {v4: uuidv4} = cere("uuid")
const id = uuidv4()
Folosind Nano ID
Nano ID este, de asemenea, un alt pachet NPM folosit pentru a genera UUID-uri în Node. Deși funcționează aproape la fel ca pachetul uuid, există câteva diferențe:
- Nano ID conține 36 de simboluri în loc de 21.
- Nano ID este de două ori mai rapid decât uuid.
- Nano ID este de patru ori mai mic decât uuid. Identificatorii săi conțin 130 de octeți în loc de 483 de octeți.
Utilizați următorul cod pentru a genera un Nano ID:
const { nanoid } = cere("nanoid")
const id = nanoid()
Este Nano ID mai bun decât uuid?
Există cel puțin trei metode pe care le puteți utiliza pentru a genera un UUID în Node: modulul cripto încorporat și pachetele terțe uuid și Nano ID. Dacă doriți să utilizați un pachet extern, luați în considerare Nano ID. Este mai mic și mult mai rapid decât uuid.