Node.js'de bir UUID oluşturmanın birkaç yolu vardır, ancak neden birini diğerine tercih etmelisiniz? İşte neden.
Evrensel benzersiz tanımlayıcı (UUID), verileri etiketlemek ve verilere erişmek için kullanabileceğiniz 128 bitlik bir karakter dizisidir. Node.js kullanarak, çeşitli yaklaşımları kullanarak kolayca UUID'ler oluşturabilirsiniz.
UUID'ler benzersiz tanımlama için güçlüdür çünkü aynı kimlikle karşılaşma şansı çok küçüktür. Bu ayrıca, merkezi bir veritabanına karşı çapraz kontrol yapmadan bağımsız olarak bir UUID oluşturabileceğiniz anlamına gelir. UUID'ler yüksek düzeyde ölçeklenebilir.
Kripto Modülünü Kullanma
yerleşik kripto modülü Node'da, UUID'ler oluşturmak için randomUUID() yöntemini sağlar.
const kripto = gerekmek("kripto")
const uuid = kripto.randomUUID()
Önlemek rastgeleUUID() UUID oluşturma sırasında önbelleği kullanmaktan devre dışı bırakEntropyCache gerçeğe, şöyle:
const uuid = kripto.randomUUID({ devre dışı bırakEntropyCache: doğru })
uuid Paketini Kullanma
Kripto modülünden farklı olarak, uuid paketi bir üçüncü taraftır npm modülü. Yüklemek için aşağıdaki komutu çalıştırın.
npm kurulum uuid'i
uuid, farklı kimlik sürümleri oluşturmanıza olanak tanır:
- Sürüm 1 ve 4, rastgele oluşturulmuş benzersiz bir kimlik oluşturur.
- Sürüm 3 ve 5, bir ad alanından ve addan benzersiz bir kimlik oluşturur.
Bu örnek, bir sürüm 4 UUID'sini nasıl oluşturabileceğinizi gösterir:
const {v4: uuidv4} = gerekmek("uuid")
const kimlik = uuidv4()
Nano Kimliği Kullanma
nano kimlik ayrıca Node.js'de UUID'ler oluşturmak için kullanılan başka bir NPM paketidir. uuid paketiyle hemen hemen aynı şekilde çalışsa da bazı farklılıklar vardır:
- Nano ID, 21 yerine 36 sembol içerir.
- Nano ID, uuid'den iki kat daha hızlıdır.
- Nano ID, uuid'den dört kat daha küçüktür. Tanımlayıcıları 483 bayt yerine 130 bayt içerir.
Bir Nano ID oluşturmak için aşağıdaki kodu kullanın:
const { nanoid } = gerekmek("nanoit")
const kimlik = nanoid()
Nano ID uuid'den Daha İyi mi?
Düğümde bir UUID oluşturmak için kullanabileceğiniz en az üç yöntem vardır: yerleşik kripto modülü ve uuid ve Nano ID üçüncü taraf paketleri. Harici bir paket kullanmak istiyorsanız Nano ID'yi düşünün. Uuid'den daha küçük ve çok daha hızlıdır.