Skip to content

Commit da90d8b

Browse files
committed
fix relative url with base
1 parent 7ed6c4d commit da90d8b

File tree

1 file changed

+27
-18
lines changed

1 file changed

+27
-18
lines changed

server/src/utils.rs

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -226,29 +226,38 @@ impl TimePeriod {
226226
}
227227
}
228228

229+
// TODO: CLEAN UP
229230
pub fn get_address() -> Url {
230231
if CONFIG.parseable.ingestor_url.is_empty() {
231-
CONFIG.parseable.address.parse::<Url>().unwrap()
232-
} else {
233-
let addr_from_env = CONFIG
234-
.parseable
235-
.ingestor_url
236-
.split(':')
237-
.collect::<Vec<&str>>();
238-
239-
let mut hostname = addr_from_env[0].to_string();
240-
let mut port = addr_from_env[1].to_string();
241-
if hostname.starts_with('$') {
242-
let var_hostname = hostname[1..].to_string();
243-
hostname = get_from_env(&var_hostname);
244-
}
245-
if port.starts_with('$') {
246-
let var_port = port[1..].to_string();
247-
port = get_from_env(&var_port);
232+
let url = format!(
233+
"{}://{}",
234+
CONFIG.parseable.get_scheme(),
235+
CONFIG.parseable.address
236+
);
237+
return url.parse::<Url>().unwrap();
238+
}
239+
let addr_from_env = CONFIG
240+
.parseable
241+
.ingestor_url
242+
.split(':')
243+
.collect::<Vec<&str>>();
244+
245+
let mut hostname = addr_from_env[0].to_string();
246+
let mut port = addr_from_env[1].to_string();
247+
if hostname.starts_with('$') {
248+
let var_hostname = hostname[1..].to_string();
249+
hostname = get_from_env(&var_hostname);
250+
if !hostname.starts_with("http") {
251+
hostname = format!("{}://{}", CONFIG.parseable.get_scheme(), hostname);
248252
}
249-
format!("{}:{}", hostname, port).parse::<Url>().unwrap()
250253
}
254+
if port.starts_with('$') {
255+
let var_port = port[1..].to_string();
256+
port = get_from_env(&var_port);
257+
}
258+
format!("{}:{}", hostname, port).parse::<Url>().unwrap()
251259
}
260+
252261
fn get_from_env(var_to_fetch: &str) -> String {
253262
env::var(var_to_fetch).unwrap_or_else(|_| "".to_string())
254263
}

0 commit comments

Comments
 (0)