Ada beberapa cara untuk menghasilkan UUID di Node.js, tetapi mengapa memilih satu dari yang lain? Inilah alasannya.
Pengidentifikasi unik universal (UUID) adalah string karakter 128-bit yang dapat Anda gunakan untuk memberi label dan mengakses data. Menggunakan Node.js, Anda dapat dengan mudah membuat UUID menggunakan beberapa pendekatan.
UUID sangat kuat untuk identifikasi unik karena kemungkinan menemukan ID yang sama sangat kecil. Ini juga berarti Anda dapat membuat UUID secara mandiri tanpa pemeriksaan silang terhadap database pusat. UUID sangat skalabel.
Menggunakan Modul kripto
built-in modul kripto di Node menyediakan metode randomUUID() untuk menghasilkan UUID.
konstan kripto = memerlukan("kripto")
konstan uuid = crypto.randomUUID()
Untuk mencegah acakUUID() dari menggunakan cache selama pembuatan UUID, atur nonaktifkanEntropyCache menjadi benar, seperti ini:
konstan uuid = crypto.randomUUID({ nonaktifkanEntropyCache: BENAR })
Menggunakan Paket uuid
Berbeda dengan modul kripto, paket uuid adalah pihak ketiga modul npm. Untuk menginstalnya, jalankan perintah berikut.
npm instal uuid
uuid memungkinkan Anda membuat versi ID yang berbeda:
- Versi 1 dan 4 menghasilkan ID unik yang dibuat secara acak.
- Versi 3 dan 5 menghasilkan ID unik dari namespace dan nama.
Contoh ini menunjukkan bagaimana Anda dapat membuat UUID versi 4:
konstan {v4: uuidv4} = memerlukan("uuid")
konstan id = uuidv4()
Menggunakan Nano ID
ID nano juga merupakan paket NPM lain yang digunakan untuk menghasilkan UUID di Node.js. Meskipun bekerja hampir sama dengan paket uuid, ada beberapa perbedaan:
- ID Nano berisi 36 simbol, bukan 21.
- Nano ID dua kali lebih cepat dari uuid.
- Nano ID empat kali lebih kecil dari uuid. Pengidentifikasinya berisi 130 byte, bukan 483 byte.
Gunakan kode berikut untuk menghasilkan ID Nano:
konstan { nanoid } = memerlukan("nano")
konstan id = nanoid()
Apakah Nano ID Lebih Baik Dari uuid?
Setidaknya ada tiga metode yang dapat Anda gunakan untuk membuat UUID di Node: modul kripto bawaan dan paket pihak ketiga uuid dan Nano ID. Jika Anda ingin menggunakan paket eksternal, pertimbangkan Nano ID. Ini lebih kecil dan jauh lebih cepat daripada uuid.