Sådan kan du generere UUID'er i Rust med og uden brug af tredjepartskasser.

UUID'er (Universally Unique Identifiers) er et pålideligt middel til entydigt at identificere objekter i distribuerede systemer, da de eliminerer behovet for centraliseret koordinering. UUID'er forbedrer dataintegriteten og fremmer interoperabilitet mellem systemer med deres unikke karakter og kollisionsbestandige karakter.

Rust er populært inden for områder, hvor unikke identifikatorer er essentielle, herunder netværk, opbygning af webapplikationer og distribuerede systemer; der er mange kasser til at generere og tilpasse UUID'er med Rust, plus du kan skrive Rust-kode for at udføre uuid kommando på din maskine og hent et UUID.

Generering af UUID'er med uuid-kassen

Det uuid kasse er det mest populære værktøj til at generere UUID'er i Rust.

Tilføj uuid kasse som en af ​​dit projekts afhængigheder i din Cargo.toml fil:

[afhængigheder]
uuid = { version = "0.8", funktioner = ["serde", "v4"] }

Generering af UUID'er med pakken er enkel. Du kan bruge ny_v4 funktion til at generere en version fire UUID:

instagram viewer
brug uuid:: Uuid;

fnvigtigste() {
// new_v4 genererer en version 4 UUID
lade my_uuid = Uuid:: new_v4();
println!("{}", my_uuid);

}

Det vigtigste funktionen genererer et nyt UUID med ny_v4 funktion og udskriver UUID til konsollen med println! makro.

Du kan tilpasse din UUID-generering med Bygger og Version moduler af uuid kasser.

Her er hvordan du kan generere en RFC4122 UUID af en tilfældig version med uuid kasse:

// Importer de nødvendige moduler fra uuid-kassen
brug uuid::{Builder, Version};

fnvigtigste() {
// Opret en ny Builder og initialiser den med en matrix på 16 nul bytes
lade uuid_result = Builder:: from_bytes([0; 16])
// Indstil UUID-versionen til Random
.set_version (Version:: Tilfældig)
// Indstil UUID-varianten til RFC4122
.set_variant (uuid:: Variant:: RFC4122)
// Byg UUID
.build();

// Udskriv det tilpassede UUID i bindestregformat
println!("Tilpasset UUID: {}", uuid_result.to_hyphenated());
}

Det vigtigste funktion genererer UUID med en ny Bygger instans oprettet med fra_bytes funktion, der tager en matrix på seksten bytes som et argument (i dette tilfælde en matrix med nuller). Bygherren konfigurerer UUID-genereringen ved at indstille versionen til Tilfældig og varianten til RFC4122.

Endelig vigtigste funktionen bygger UUID'et med bygge metodekald på builderen og udskriver UUID til konsollen.

Generering af UUID'er ved at udføre UUID-kommandoen

Du behøver måske ikke tredjepartsafhængigheder i Rust at generere UUID'er, især hvis du ikke har til hensigt at tilpasse UUID'et baseret på din use case. De fleste operativsystemer har et UUID-genereringsværktøj installeret, som de fleste applikationer kalder for at generere UUID'er. Du kan skrive Rust-kode for at udføre UUID-kommandolinjeværktøjet og hente UUID til din program.

Du kan bruge Rusts indbyggede std:: process:: Kommando modul til at skabe og interagere med nye processer. For at generere UUID'er med Kommando modul, skal du identificere navnet på UUID-genereringsværktøjet på dit operativsystem. På macOS er UUID-genereringsværktøjet navngivet uuigen.

Her er, hvordan du kan generere og hente UUID'er fra din rustkode ved at udføre uuidgen kommando med Kommando modul:

brug std:: process:: Kommando;

fngenerere_uuid() -> Resultat<Snor, std:: io:: Fejl> {
lade output = Kommando:: ny("uuidgen").produktion()?;
lade uuid = Snor::from_utf8_lossy(&output.stdout).into_owned();
Okay(uuid)
}

fnvigtigste() {
match gener_uuid() {
Okay(uuid) => println!("Genereret UUID: {}", uuid),
Err(e) => eprintln!("Fejl ved generering af UUID: {}", e),
}
}

Det generere_uuid funktion returnerer strengversionen af ​​UUID og en fejl. Det generere_uuid funktion afføder en ny proces med ny metoden til Kommando modul, henter outputtet med produktion funktion, og konverterer UUID til en streng med from_utf8_lossy fungere.

Det vigtigste funktionen kalder generere_uuid funktion med en matcherklæring, håndterer fejlen, og udsender UUID eller en fejlmeddelelse baseret på status for operationen.

Du kan bygge sofistikerede webapplikationer med rust

UUID'er er meget vigtige i moderne softwareudvikling. De fleste af dine hverdagsapplikationer bruger UUID'er, og UUID-genereringsværktøjer er installeret i de fleste operativsystemer, inklusive Microsoft Windows, Linux og macOS.

Du kan bruge UUID'er til at identificere brugere af dine webapplikationer. Dette er en fantastisk måde at sikre, at brugerne har en unik identifikator, som de kan bruge til at spore deres aktivitet. Derudover kan du bruge UUID'er til at identificere andre objekter i din webapp, fra filer til dokumenter og produkter.