lattice_sdk/core/utils.rs
1/// URL building utilities
2/// Safely join a base URL with a path, handling slashes properly
3///
4/// # Examples
5/// ```
6/// use example_api::utils::url::join_url;
7///
8/// assert_eq!(join_url("https://api.example.com", "users"), "https://api.example.com/users");
9/// assert_eq!(join_url("https://api.example.com/", "users"), "https://api.example.com/users");
10/// assert_eq!(join_url("https://api.example.com", "/users"), "https://api.example.com/users");
11/// assert_eq!(join_url("https://api.example.com/", "/users"), "https://api.example.com/users");
12/// ```
13pub fn join_url(base_url: &str, path: &str) -> String {
14 format!(
15 "{}/{}",
16 base_url.trim_end_matches('/'),
17 path.trim_start_matches('/')
18 )
19}