Ved Ukeje Chukwuemeriwo Godhed

Go tilbyder mange måder at generere UUID'er på, som er en praktisk og robust måde at organisere dine data på.

Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission. Læs mere.

Universally Unique Identifiers (UUID) er populære til brugeridentifikation i applikationer, hvor en høj grad af tilfældighed er afgørende. UUID'er er et godt valg for apps, der betjener millioner af brugere, da de reducerer risikoen for kollisioner, og de er universelt forskellige på tværs af systemer.

Go leverer ingen pakker til generering af UUID'er. Da de fleste Unix-relaterede operativsystemer inkluderer uuidgen programmet, kan du bruge os pakke for at generere dem. Du kan også bruge en ekstern Go-pakke som Googles uuid eller den gouuid pakke.

Generering af UUID'er med os-pakken

The Go os pakken giver funktionalitet til at interagere med værtsmaskinens operativsystem på en Unix-lignende måde. Du kan udføre kommandoer med

instagram viewer
exec underpakke af os pakke og hent outputtet til din Gå programmer.

Importer disse indbyggede pakker i din Go-fil for at generere UUID'er med os pakke.

importere (\n "fmt"\n "log"\n "os/exec"\n)\n

Du vil bruge log pakke til at logge mulige fejl og det fmt strengformateringspakke for at udlæse det genererede UUID.

Du kan køre kommandoer med Kommando metoden til exec pakke. Det Produktion metode returnerer kommandoens output.

funcosExec() {\n generer UUID, fejl := exec. Kommando("uuidgen").Output()\n \n hvis fejl!= nul {\n log. Fatal (fejl)\n }\n \n fmt. Println (generer UUID)\n}\n

Det osExec funktionen genererer og udskriver et UUID ved hjælp af uuidgen kommando.

Generering af UUID'er med Googles UUID-pakke

Google uuid pakken genererer og inspicerer UUID'er baseret på RFC 4122 og DCE 1.1 Authentication and Security Services.

Kør denne terminalkommando i dit projekts bibliotek for at installere uuid pakke som en af ​​dit projekts afhængigheder.

 hent github.com/google/uuid\n

Importer uuid pakke til at generere UUID'er og fmt pakke til at udsende UUID til din konsol.

importere (\n "fmt"\n "github.com/google/uuid"\n)\n

Du kan generere et UUID med uuid-pakkens Ny metode. Det Ny metode returnerer et tilfældigt UUID, og ​​du kan bruge det Snor metode til at opnå en strengrepræsentation af det.

funcgoogleUUID() {\n uuidVærdi := uuid. New()\n fmt. Println (uuidValue. String())\n}\n

Det googleUUID funktionen bruger Ny metode til at udskrive strengformatet for en tilfældig UUID.

Generering af UUID'er med GoUUID-pakken

gouuid-pakken leverer uforanderlige UUID-strukturer og funktioner til generering af NewV3, NewV4 og NewV5 UUID'er og parsing af UUID'erne som specificeret i RFC 4122.

Kør denne kommando i terminalen i dit arbejdsbibliotek for at installere gouuid pakke til dit projekts afhængigheder.

 hent github.com/nu7hatch/gouuid\n

Importer fmt og gouuid pakker med alias uuid (konventionel) til at generere UUID'er.

importere (\n "fmt"\n uuid "github.com/nu7hatch/gouuid"\n)\n

Du kan generere version 4 UUID'er med NyV4 metode, der returnerer UUID eller en fejl.

funcgenerereV4(){\n v4UUID, fejl := uuid. NewV4()\n \n hvis fejl!= nul {\n fmt. Println (fejl)\n }\n \n fmt. Println (v4UUID)\n}\n

Det generereV4 metode udskriver det genererede UUID fra NyV4 metoden til gouuid pakke.

På samme måde kan du generere version 5 UUID'er med NyV5 metode. Det NyV5 metoden tager en UUID-navneområde-URL og et byteudsnit og returnerer den genererede version 5 UUID.

funcgenerereV5(){\n v5UUID, fejl := uuid. NewV5(uuid. Navneområde-URL, []byte("go.dev"))\n \n hvis fejl!= nul {\n fmt. Println (fejl)\n }\n \n fmt. Println (v5UUID)\n}\n

Det generereV5 funktion udskriver den genererede version fem UUID efter UUID-genereringen med NyV5 metode, hvis der ikke er genereringsfejl.

Du kan generere UUID'er med de fleste programmeringssprog

UUID'er er nyttige til mange brugssager, så de er populære i hverdagsapplikationer. De fleste programmeringssprog giver funktionalitet til at generere UUID'er i deres standardbiblioteker eller økosystempakker.

Abonner på vores nyhedsbrev

Kommentarer

DelTweetDelDelDel
Kopi
E-mail
Del
DelTweetDelDelDel
Kopi
E-mail

Linket er kopieret til udklipsholderen

Relaterede emner

  • Programmering
  • Programmering

Om forfatteren

Ukeje Chukwuemeriwo Godhed (31 artikler udgivet)

Goodness er en maskiningeniørstuderende og softwareudvikler, der brænder for cloud-teknologier og Go-programmeringssproget.