mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-10 02:05:10 +00:00
Dont append ? to url when cleaning it (#1716)
This commit is contained in:
parent
f6f169b4eb
commit
3b37ea6c8b
|
@ -149,12 +149,14 @@ pub fn get_ip(conn_info: &ConnectionInfo) -> IpAddr {
|
|||
}
|
||||
|
||||
pub fn clean_url_params(mut url: Url) -> Url {
|
||||
let new_query = url
|
||||
.query_pairs()
|
||||
.filter(|q| !CLEAN_URL_PARAMS_REGEX.is_match(&q.0))
|
||||
.map(|q| format!("{}={}", q.0, q.1))
|
||||
.join("&");
|
||||
url.set_query(Some(&new_query));
|
||||
if url.query().is_some() {
|
||||
let new_query = url
|
||||
.query_pairs()
|
||||
.filter(|q| !CLEAN_URL_PARAMS_REGEX.is_match(&q.0))
|
||||
.map(|q| format!("{}={}", q.0, q.1))
|
||||
.join("&");
|
||||
url.set_query(Some(&new_query));
|
||||
}
|
||||
url
|
||||
}
|
||||
|
||||
|
@ -169,5 +171,9 @@ mod tests {
|
|||
let cleaned = clean_url_params(url);
|
||||
let expected = Url::parse("https://example.com/path/123?username=randomuser&id=123").unwrap();
|
||||
assert_eq!(expected.to_string(), cleaned.to_string());
|
||||
|
||||
let url = Url::parse("https://example.com/path/123").unwrap();
|
||||
let cleaned = clean_url_params(url.clone());
|
||||
assert_eq!(url.to_string(), cleaned.to_string());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue