Slik kan du generere UUID-er i Rust med og uten å bruke tredjepartskasser.

UUID (Universally Unique Identifiers) er en pålitelig måte å identifisere objekter i distribuerte systemer på, siden de eliminerer behovet for sentralisert koordinering. UUID-er forbedrer dataintegriteten og fremmer interoperabilitet mellom systemer med deres unike og kollisjonsbestandige natur.

Rust er populært i felt der unike identifikatorer er avgjørende, inkludert nettverk, bygging av webapplikasjoner og distribuerte systemer; det er mange kasser for å generere og tilpasse UUID-er med Rust, pluss at du kan skrive Rust-kode for å utføre uuid kommando på maskinen din og hent en UUID.

Generer UUID-er med uuid-kassen

De uuid kasse er det mest populære verktøyet for å generere UUID-er i Rust.

Legg til uuid kasse som en av prosjektets avhengigheter i din Cargo.toml fil:

[avhengigheter]
uuid = { versjon = "0.8", funksjoner = ["serde", "v4"] }

Det er enkelt å generere UUID-er med pakken. Du kan bruke ny_v4 funksjon for å generere en versjon fire UUID:

instagram viewer
bruk uuid:: Uuid;

fnhoved-() {
// new_v4 genererer en versjon 4 UUID
la min_uuid = Uuid:: new_v4();
println!("{}", my_uuid);

}

De hoved- funksjonen genererer en ny UUID med ny_v4 funksjon og skriver ut UUID til konsollen med println! makro.

Du kan tilpasse UUID-generasjonen din med Bygger og Versjon moduler av uuid kasser.

Her er hvordan du kan generere en RFC4122 UUID av en tilfeldig versjon med uuid kasse:

// Importer de nødvendige modulene fra uuid-kassen
bruk uuid::{Builder, Versjon};

fnhoved-() {
// Lag en ny Builder og initialiser den med en matrise på 16 null byte
la uuid_result = Bygger:: fra_bytes([0; 16])
// Sett UUID-versjonen til Random
.set_version (Versjon:: Tilfeldig)
// Sett UUID-varianten til RFC4122
.set_variant (uuid:: Variant:: RFC4122)
// Bygg UUID
.bygge();

// Skriv ut den tilpassede UUID-en i bindestreksformat
println!("Tilpasset UUID: {}", uuid_result.to_hyphenated());
}

De hoved- funksjonen genererer UUID med en ny Bygger forekomst opprettet med fra_bytes funksjon som tar en matrise på seksten byte som et argument (i dette tilfellet en matrise med nuller). Byggeren konfigurerer UUID-genereringen ved å sette versjonen til Tilfeldig og varianten til RFC4122.

Til slutt, den hoved- funksjonen bygger UUID med bygge metodekall på byggherren og skriver ut UUID til konsollen.

Generering av UUID-er ved å utføre UUID-kommandoen

Du trenger kanskje ikke tredjepartsavhengigheter i Rust å generere UUID-er, spesielt hvis du ikke har tenkt å tilpasse UUID-en basert på brukssaken din. De fleste operativsystemer har et UUID-genereringsverktøy installert som de fleste applikasjoner kaller for å generere UUID-er. Du kan skrive Rust-kode for å utføre UUID-kommandolinjeverktøyet og hente UUID for din program.

Du kan bruke Rusts innebygde std:: prosess:: Kommando modul for å gyte og samhandle med nye prosesser. For å generere UUID-er med Kommando modul, må du identifisere navnet på UUID-genereringsverktøyet på operativsystemet ditt. På macOS heter UUID-genereringsverktøyet uuigen.

Slik kan du generere og hente UUID-er fra rustkoden din ved å kjøre uuidgen kommando med Kommando modul:

bruk std:: prosess:: Kommando;

fngenerere_uuid() -> Resultat<String, std:: io:: Feil> {
la output = Kommando:: ny("uuidgen").produksjon()?;
la uuid = String::from_utf8_lossy(&output.stdout).into_owned();
Ok(uuid)
}

fnhoved-() {
kamp generere_uuid() {
Ok(uuid) => println!("Generert UUID: {}", uuid),
Err(e) => eprintln!("Feil under generering av UUID: {}", e),
}
}

De generere_uuid funksjonen returnerer strengversjonen av UUID og en feil. De generere_uuid funksjonen skaper en ny prosess med ny metoden for Kommando modul, henter utgangen med produksjon funksjon, og konverterer UUID til en streng med from_utf8_lossy funksjon.

De hoved- funksjonen kaller generere_uuid funksjon med en samsvarserklæring, håndterer feilen, og sender ut UUID eller en feilmelding basert på statusen til operasjonen.

Du kan bygge sofistikerte webapplikasjoner med rust

UUID-er er svært viktige i moderne programvareutvikling. De fleste av dine hverdagsapplikasjoner bruker UUID-er, og UUID-genereringsverktøy er installert i de fleste operativsystemer, inkludert Microsoft Windows, Linux og macOS.

Du kan bruke UUID-er for å identifisere brukere av nettapplikasjonene dine. Dette er en fin måte å sikre at brukerne har en unik identifikator som de kan bruke til å spore aktiviteten deres. I tillegg kan du bruke UUID-er til å identifisere andre objekter i nettappen din, fra filer til dokumenter og produkter.