Cela concerne cette question . J'utilise le code ci-dessous à partir de cette réponse pour générer l'UUID en JavaScript:
'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
return v.toString(16);
});
Cette solution semble fonctionner correctement, mais j'obtiens des collisions. Voici ce que j'ai:
- Une application Web fonctionnant dans Google Chrome.
- 16 utilisateurs.
- environ 4000 UUID ont été générés au cours des 2 derniers mois par ces utilisateurs.
- J'ai eu environ 20 collisions - par exemple, le nouvel UUID généré aujourd'hui était le même qu'il y a environ 2 mois (utilisateur différent).
Quelle est la cause de ce problème et comment puis-je l'éviter?