Environment & Config
Rust มีเครื่องมือสำหรับจัดการ Environment Variables และ Configuration ทั้งใน Standard Library และ crates ที่นิยมใช้
ลองนึกภาพว่า Config เป็นเหมือน “DNA” ของ Application ที่บอกว่าจะทำงานยังไงในแต่ละ environment การจัดการ Config ที่ดีจะช่วยให้ deploy ไป production ได้อย่างมั่นใจ!
1. Environment Variables (std::env)
Section titled “1. Environment Variables (std::env)”1.1 Reading Environment Variables
Section titled “1.1 Reading Environment Variables”use std::env;
fn main() { // ============================================ // env::var() - อ่านค่า environment variable // Return Result<String, VarError> // ============================================ match env::var("HOME") { Ok(val) => println!("HOME: {}", val), Err(e) => println!("HOME not set: {}", e), }
// ============================================ // unwrap_or() - ให้ default ถ้าไม่มี // ============================================ let port = env::var("PORT").unwrap_or(String::from("8080")); println!("PORT: {}", port);
// ============================================ // unwrap_or_else() - lazy default (compute เมื่อจำเป็น) // ============================================ let host = env::var("HOST").unwrap_or_else(|_| { println!("HOST not set, using default"); String::from("127.0.0.1") }); println!("HOST: {}", host);
// ============================================ // env::vars() - iterate ทุก env vars // ============================================ println!("\nFirst 5 environment variables:"); for (key, value) in env::vars().take(5) { println!(" {}: {}", key, value); }}เข้าสู่ระบบเพื่อดูเนื้อหาเต็ม
ยืนยันตัวตนด้วยบัญชี Google เพื่อปลดล็อกบทความทั้งหมด
Login with Google