Leer hoe u de dotenv-krat en std:: env-module kunt gebruiken om te communiceren met omgevingsvariabelen in Rust en gevoelige informatie te verwerken.

Omgevingsvariabelen spelen een cruciale rol bij het configureren en aanpassen van het gedrag van moderne software en bieden een flexibele manier om informatie naar apps over te brengen zonder hardcoding-waarden.

Omgevingsvariabelen zijn dynamische sleutel-waardeparen die zijn ingesteld in de omgeving van een besturingssysteem of een bestand met omgevingsvariabelen voor toegang tijdens runtime. In tegenstelling tot hardgecodeerde waarden, zorgen omgevingsvariabelen voor meer flexibiliteit en aanpassingsvermogen, omdat u ze eenvoudig kunt wijzigen.

Er zijn veel pakketten en modules voor interactie met omgevingsvariabelen in het ecosysteem van Rust, waaronder de dotenv, jaloezie, En configuratie kratten van derden en gebruik Rust's ingebouwde standaard:: env moduul.

Inleiding tot de dotenv Krat

De dotenv krat is een waardevol hulpmiddel voor het beheren van omgevingsvariabelen in uw Rust-project. De

instagram viewer
dotenv krat biedt eenvoudige integratie en gebruiksvriendelijke functies die het proces van laden en toegang tot omgevingsvariabelen uit bestanden met omgevingsvariabelen vereenvoudigen.

De kenmerken van de dotenv-krat omvatten naadloos laden van omgevingsvariabelen, foutafhandeling benaderingen voor ontbrekende variabelen, samenwerking met de standaard:: env module, en meer.

Voeg de dotenv krat naar je toe Cargo.toml sectie afhankelijkheden van het bestand om te beginnen met interactie met omgevingsvariabelen met behulp van het pakket.

[afhankelijkheden]
dotenv = "0.15.0"

Voer deze opdracht uit in de terminal van de map van uw project om een ​​bestand met omgevingsvariabelen te maken en een sleutel-waardepaar in te voegen.

echo DATABASE_URL=database.db > .env

Zo kunt u het omgevingsbestand laden en de waarde van een paar uit het bestand halen (in dit geval de waarde van de DATABASE_URL sleutel:

gebruik standaard:: env;
gebruik dotenv:: dotenv;

fnvoornaamst() {

dotenv().ok(); // Laad het .env-bestand

// Lees de waarde uit het .env-bestand
laten database_url = env:: var("DATABASE_URL").verwachten("U heeft de DATABASE_URL niet ingesteld");

// Druk de waarde af
println!("Database-URL: {}", database_url);

}

De voornaamst functie laadt de .env bestand met de OK functie, leest de waarde uit het bestand met de env:: var functie, en handelt mogelijke fouten af ​​met de verwachten functie.

Inleiding tot de std:: env-module

Alternatief, in plaats van pakketten van derden gebruiken, kunt u Rust's ingebouwde gebruiken standaard:: env module om omgevingsvariabelen van uw machine te lezen.

Eerst moet u de env module in uw Rust-bestand als volgt:

gebruik standaard:: env;

Na het importeren van de standaard:: env module kunt u omgevingsvariabelen lezen en schrijven.

Hier leest u hoe u de PWD (Present Working Directory) omgevingsvariabele met de standaard:: env moduul.

gebruik standaard:: env;

fnvoornaamst() {

// Haal de waarde op van de omgevingsvariabele "PWD".
laten variabele = env:: var("PWD").verwachten("Fout: omgevingsvariabele werkmap niet gevonden");

// Druk de waarde af die is gekoppeld aan de sleutel "PWD".
println!("Waarde gekoppeld aan de PWD-sleutel: {}", variabel);

}

De voornaamst functie drukt de waarde af die is gekoppeld aan de PWD sleutel nadat de variabele de waarde ophaalt met de env:: var functie.

Ook kunt u gebruik maken van de standaard:: env module's set_var functie om omgevingsvariabelen in te stellen.

gebruik standaard:: env;

fnvoornaamst() -> ResultaatDoos<dyn std:: fout:: Fout>> {

// Stel de omgevingsvariabele "DATABASE_URL" in op "database.db"
env:: set_var("DATABASE_URL", "database.db");

// Haal de waarde op van de omgevingsvariabele "DATABASE_URL".
laten env_variabele = env:: var("DATABASE_URL");

// Controleer of het ophalen van de omgevingsvariabele is gelukt
als env_variabele.is_err() {

// Als de omgevingsvariabele niet is gevonden, drukt u een foutmelding af
println!("Fout: DATABASE_URL niet gevonden");

} anders {

// Als de omgevingsvariabele is gevonden, drukt u de waarde af
println!("DATABASE_URL ingesteld op: {}", env_variable.uitpakken());

}

OK(())
}

De voornaamst functie stelt de omgevingsvariabele in met de set_var functie die het sleutel-waardepaar opneemt. Nadat de omgevingsvariabele is ingesteld, drukt de functie de waarde af die aan de sleutel is gekoppeld.

Omgevingsvariabelen zijn veelzijdig

Omgevingsvariabelen zijn een waardevol hulpmiddel voor het omgaan met dynamische gegevens; ze vergemakkelijken testgestuurde ontwikkeling, omdat u de gegevens eenvoudig kunt wijzigen en testcases kunt uitvoeren voor meerdere scenario's.

Door omgevingsvariabelen te gebruiken, kunt u voorkomen dat gevoelige informatie hard wordt gecodeerd, zoals databasegebruikersnamen, wachtwoorden en verbindings-URL's rechtstreeks in de broncode, waardoor de beveiliging van uw toepassing wordt verbeterd en de configuratie eenvoudiger wordt beheer.