From 0c101348293f80ef7fa6c2e1c049cc96b1eb54da Mon Sep 17 00:00:00 2001 From: Sergio <77530549+sergi0g@users.noreply.github.com> Date: Sun, 5 Jan 2025 13:42:15 +0200 Subject: [PATCH] Fix #55 --- src/utils/request.rs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/utils/request.rs b/src/utils/request.rs index 5bbdd4c..e549004 100644 --- a/src/utils/request.rs +++ b/src/utils/request.rs @@ -11,11 +11,16 @@ pub fn parse_www_authenticate(www_auth: &str) -> String { if !challenges.is_empty() { let challenge = &challenges[0]; if challenge.scheme == "Bearer" { - format!( - "{}?service={}", - challenge.params[0].1.as_escaped(), - challenge.params[1].1.as_escaped() - ) + challenge + .params + .iter() + .fold(String::new(), |acc, (key, value)| { + if *key == "realm" { + return acc.to_owned() + value.as_escaped() + "?"; + } else { + return format!("{}&{}={}", acc, key, value.as_escaped()); + } + }) } else { error!("Unsupported scheme {}", &challenge.scheme) }