Научете как да използвате dotenv crate и std:: env модула, за да взаимодействате с променливите на средата в Rust и да обработвате поверителна информация.

Променливите на средата играят решаваща роля при конфигурирането и персонализирането на поведението на съвременния софтуер, осигурявайки гъвкав начин за предаване на информация към приложения без твърдо кодирани стойности.

Променливите на средата са динамични двойки ключ-стойност, зададени в средата на операционната система или файл с променлива на средата за достъп по време на изпълнение. За разлика от твърдо кодираните стойности, променливите на средата позволяват по-голяма гъвкавост и адаптивност, тъй като можете лесно да ги променяте.

Има много пакети и модули за взаимодействие с променливите на средата в екосистемата на Rust, включително dotenv, завист, и конфиг каси на трети страни и използвайте вградените на Rust std:: env модул.

Въведение в dotenv Crate

The dotenv crate е ценен инструмент за управление на променливи на средата във вашия Rust проект. The

instagram viewer
dotenv crate осигурява проста интеграция и лесни за използване функции, които опростяват процеса на зареждане и достъп до променливи на средата от файлове с променливи на средата.

Характеристиките на dotenv crate включват безпроблемно зареждане на променливи на средата, подходи за обработка на грешки за липсващи променливи, взаимодействие с std:: env модул и др.

Добавете dotenv щайга към вашия Cargo.toml секцията за зависимости на файла, за да започнете да взаимодействате с променливите на средата с помощта на пакета.

[зависимости]
dotenv = "0.15.0"

Изпълнете тази команда в терминала на директорията на вашия проект, за да създадете файл с променливи на средата и да вмъкнете двойка ключ-стойност.

ехо DATABASE_URL=database.db > .env

Ето как можете да заредите файла на средата и да извлечете стойността на двойка от файла (в този случай стойността на DATABASE_URL ключ:

използване std:: env;
използване dotenv:: dotenv;

fnосновен() {

dotenv().ok(); // Заредете .env файла

// Прочетете стойността от .env файла
позволявам база_данни_url = env:: var(„DATABASE_URL“).очаквам(„Не сте задали DATABASE_URL“);

// Отпечатайте стойността
println!(„URL адрес на базата данни: {}“, база_данни_url);

}

The основен функцията зарежда .env файл с Добре функция, чете стойността от файла с env:: var функция и обработва възможните грешки с очаквам функция.

Въведение в модула std:: env

Алтернативно, вместо използване на пакети на трети страни, можете да използвате вградения на Rust std:: env модул за четене на променливи на средата от вашата машина.

Първо, ще трябва да импортирате околна среда модул във вашия Rust файл, както следва:

използване std:: env;

След импортиране на std:: env модул, можете да четете и пишете променливи на средата.

Ето как можете да прочетете хора с увреждания (Текуща работна директория) променлива на средата с std:: env модул.

използване std:: env;

fnосновен() {

// Извличане на стойността на променливата на средата "PWD".
позволявам променлива = env:: var("инвалиди").очаквам(„Грешка: Променливата на средата на работната директория не е намерена“);

// Отпечатайте стойността, свързана с ключа "PWD".
println!(„Стойност, свързана с PWD ключа: {}“, променлива);

}

The основен функцията отпечатва стойността, свързана с хора с увреждания ключ, след като променливата извлече стойността с env:: var функция.

Освен това можете да използвате std:: env модули set_var функция за задаване на променливи на средата.

използване std:: env;

fnосновен() -> РезултатКутия<дин std:: грешка:: грешка>> {

// Задайте променливата на средата "DATABASE_URL" на "database.db"
env:: set_var(„DATABASE_URL“, "база данни.db");

// Извличане на стойността на променливата на средата "DATABASE_URL".
позволявам env_variable = env:: var(„DATABASE_URL“);

// Проверете дали извличането на променливата на средата е успешно
ако env_variable.is_err() {

// Ако променливата на средата не е намерена, отпечатайте съобщение за грешка
println!(„Грешка: DATABASE_URL не е намерен“);

} друго {

// Ако променливата на средата е намерена, отпечатайте нейната стойност
println!(„DATABASE_URL зададен на: {}“, env_variable.unwrap());

}

Добре(())
}

The основен функция задава променливата на средата с set_var функция, която приема двойката ключ-стойност. След като зададете променливата на средата, функцията отпечатва стойността, свързана с ключа.

Променливите на средата са многостранни

Променливите на средата са ценен инструмент за обработка на динамични данни; те улесняват разработката, управлявана от тестове, тъй като можете лесно да променяте данните и да изпълнявате тестови случаи за множество сценарии.

Чрез използването на променливи на средата можете да избегнете твърдото кодиране на чувствителна информация като потребителски имена на бази данни, пароли и URL адреси за връзка директно в изходния код, като по този начин повишавате сигурността на вашето приложение, като същевременно позволявате по-лесно конфигуриране управление.