Rust'ta ortam değişkenleriyle etkileşim kurmak ve hassas bilgileri işlemek için dotenv kasasını ve std:: env modülünü nasıl kullanacağınızı öğrenin.
Ortam değişkenleri, günümüz yazılımlarının davranışını yapılandırmada ve özelleştirmede önemli roller oynayarak, bilgileri sabit kodlama değerleri olmadan uygulamalara iletmek için esnek bir yol sağlar.
Ortam değişkenleri, bir işletim sisteminin ortamında veya çalışma zamanı sırasında erişim için bir ortam değişken dosyasında ayarlanan dinamik anahtar/değer çiftleridir. Sabit kodlanmış değerlerin aksine, ortam değişkenleri, bunları kolayca değiştirebildiğiniz için daha fazla esneklik ve uyarlanabilirlik sağlar.
Rust'ın ekosisteminde ortam değişkenleriyle etkileşim kurmak için birçok paket ve modül vardır. dotenv, imrenmek, Ve yapılandırma üçüncü taraf kasalar ve Rust'ın yerleşik std:: ortam modül.
dotenv Crate'e giriş
bu dotenv sandık, Rust projenizdeki ortam değişkenlerini yönetmek için değerli bir araçtır. bu dotenv sandık, ortam değişkenlerini yükleme ve ortam değişkenleri dosyalarından ortam değişkenlerine erişme sürecini basitleştiren basit entegrasyon ve kullanımı kolay işlevler sağlar.
dotenv kasasının özellikleri arasında kesintisiz ortam değişkeni yükleme, hata işleme yaklaşımları eksik değişkenler için, std:: ortam modül ve daha fazlası.
Ekle dotenv sandık senin Kargo.toml paketi kullanarak ortam değişkenleriyle etkileşime başlamak için dosyanın bağımlılıklar bölümü.
[bağımlılıklar]
dotenv = "0.15.0"
Bir ortam değişkenleri dosyası oluşturmak ve bir anahtar/değer çifti eklemek için projenizin dizininin terminalinde bu komutu çalıştırın.
Eko DATABASE_URL=veritabanı.db > .env
Ortam dosyasını nasıl yükleyeceğiniz ve dosyadan bir çiftin değerini nasıl alacağınız aşağıda açıklanmıştır (bu durumda, DATABASE_URL anahtar:
kullanmak std:: ortam;
kullanmak dotenv:: dotenv;fnana() {
dotenv().ok(); // .env dosyasını yükleyin
// .env dosyasındaki değeri oku
izin vermek database_url = env:: var("VERİTABANI_URL").beklemek("DATABASE_URL'yi ayarlamadınız");// değeri yazdır
yazdır!("Veritabanı URL'si: {}", database_url);
}
bu ana işlev yükler .env ile dosya Tamam işlevi, dosyadan değeri okur ortam:: var işlevini kullanır ve olası hataları beklemek işlev.
std:: env Modülüne Giriş
Alternatif olarak, yerine üçüncü taraf paketleri kullanma, Rust'ın yerleşik özelliğini kullanabilirsiniz std:: ortam makinenizden ortam değişkenlerini okumak için modül.
İlk olarak, içe aktarmanız gerekecek çevre Rust dosyanızdaki modül şu şekilde:
kullanmak std:: ortam;
içe aktardıktan sonra std:: ortam modül, ortam değişkenlerini okuyabilir ve yazabilirsiniz.
Şu şekilde okuyabilirsiniz: özürlü (Mevcut Çalışma Dizini) ortam değişkeni ile std:: ortam modül.
kullanmak std:: ortam;
fnana() {
// "PWD" ortam değişkeninin değerini alın
izin vermek değişken = ortam:: var("özürlü").beklemek("Hata: Çalışma dizini ortam değişkeni bulunamadı");// "PWD" tuşuyla ilişkili değeri yazdır
yazdır!("PWD anahtarıyla ilişkili değer: {}", değişken);
}
bu ana işlevi, ilgili değeri yazdırır özürlü değişken ile değeri aldıktan sonra anahtar ortam:: var işlev.
Ayrıca, std:: ortam modülün set_var ortam değişkenlerini ayarlama işlevi.
kullanmak std:: ortam;
fnana() -> SonuçKutu<din std:: hata:: Hata >> {
// "DATABASE_URL" ortam değişkenini "database.db" olarak ayarlayın
ortam:: set_var("VERİTABANI_URL", "veritabanı.db");// "DATABASE_URL" ortam değişkeninin değerini alın
izin vermek env_variable = env:: var("VERİTABANI_URL");// Ortam değişkenini almanın başarılı olup olmadığını kontrol edin
eğer env_variable.is_err() {// Ortam değişkeni bulunamadıysa bir hata mesajı yazdırın
yazdır!("Hata: DATABASE_URL bulunamadı");} başka {
// Ortam değişkeni bulunduysa, değerini yazdır
yazdır!("DATABASE_URL şu şekilde ayarlandı: {}", env_variable.unwrap());}
Tamam(())
}
bu ana işlev, ortam değişkenini şu şekilde ayarlar: set_var anahtar-değer çiftini alan işlev. Ortam değişkenini ayarladıktan sonra işlev, tuşla ilişkili değeri yazdırır.
Ortam Değişkenleri Çok Yönlüdür
Ortam değişkenleri, dinamik verileri işlemek için değerli bir araçtır; verileri kolayca değiştirebildiğiniz ve birden çok senaryo için test senaryoları çalıştırabildiğiniz için test güdümlü geliştirmeyi kolaylaştırırlar.
Ortam değişkenlerini kullanarak, veritabanı kullanıcı adları, parolalar ve URL'leri doğrudan kaynak koduna bağlayın, böylece daha kolay yapılandırmaya izin verirken uygulamanızın güvenliğini artırın yönetmek.