Unverified Commit 20f69451 authored by spikecodes's avatar spikecodes
Browse files

Fix #140

parent 10c73fad
......@@ -43,10 +43,17 @@ where
#[async_trait]
impl<State: Clone + Send + Sync + 'static> Middleware<State> for NormalizePath {
async fn handle(&self, request: Request<State>, next: Next<'_, State>) -> tide::Result {
if !request.url().path().ends_with('/') {
Ok(Response::builder(301).header("Location", format!("{}/", request.url().path())).build())
} else {
let path = request.url().path();
let query = request.url().query().unwrap_or_default();
if path.ends_with('/') {
Ok(next.run(request).await)
} else {
let normalized = if query != "" {
format!("{}/?{}", path.replace("//", "/"), query)
} else {
format!("{}/", path.replace("//", "/"))
};
Ok(redirect(normalized))
}
}
}
......
......@@ -2,9 +2,9 @@
"name": "Libreddit",
"short_name": "Libreddit",
"display": "standalone",
"background_color": "#1F1F1F",
"background_color": "#1f1f1f",
"description": "An alternative private front-end to Reddit",
"theme_color": "#1F1F1F",
"theme_color": "#1f1f1f",
"icons": [
{
"src": "logo.png",
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment