40 lines
1.1 KiB
Rust
40 lines
1.1 KiB
Rust
use rand::{distributions::Alphanumeric, Rng}; // 0.8
|
|
use std::env;
|
|
|
|
pub fn randstr() -> String {
|
|
rand::thread_rng()
|
|
.sample_iter(&Alphanumeric)
|
|
.take(7)
|
|
.map(char::from)
|
|
.collect()
|
|
}
|
|
|
|
// le a variable de entorno UPLOADS para configurar o directorio de almacenamento
|
|
// por defecto: dir_actual/uploads/
|
|
pub fn env_uploads_dir() -> String {
|
|
match env::var_os("UPLOADS") {
|
|
Some(val) => val.into_string().unwrap(),
|
|
None => "uploads/".to_string(),
|
|
}
|
|
}
|
|
|
|
// le a variable de entorno PORT para configurar o porto de escoita
|
|
// por defecto o 3000
|
|
pub fn env_listen_port() -> u16 {
|
|
match env::var_os("PORT") {
|
|
Some(val) => val.into_string().unwrap().parse::<u16>().unwrap(),
|
|
None => 3000,
|
|
}
|
|
}
|
|
|
|
// le a variable de entorno BASE_URL para configurar o porto de escoita
|
|
// por defecto: http://localhost:3000
|
|
pub fn env_base_url() -> String {
|
|
let port = env_listen_port();
|
|
|
|
match env::var_os("BASE_URL") {
|
|
Some(val) => format!("{}:{}", val.into_string().unwrap(), port),
|
|
None => format!("{}:{}", "http://localhost", port),
|
|
}
|
|
}
|