J'ai un code qui ressemble à ceci :
u := make([]byte, 16)
_, err := rand.Read(u)
if err != nil {
return
}
u[8] = (u[8] | 0x80) & 0xBF // what does this do?
u[6] = (u[6] | 0x40) & 0x4F // what does this do?
return hex.EncodeToString(u)
Il renvoie une chaîne de caractères d'une longueur de 32, mais je ne pense pas qu'il s'agisse d'un UUID valide. S'il s'agit d'un vrai UUID, pourquoi est-ce un UUID, et à quoi sert le code qui modifie la valeur de u[8]
y u[6]
?
Existe-t-il une meilleure façon de générer des UUID ?
1 votes
Le présent répondre semble plus approprié aujourd'hui.