summaryrefslogtreecommitdiff
path: root/src/http/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/http/mod.rs')
-rw-r--r--src/http/mod.rs16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/http/mod.rs b/src/http/mod.rs
index 7b1b983..11887ae 100644
--- a/src/http/mod.rs
+++ b/src/http/mod.rs
@@ -73,9 +73,7 @@ impl Server {
match (method, path) {
("GET", "/") => self.serve_static_file(&mut stream, "./public/index.html"),
- ("GET", "/.well-known/oauth-authorization-server") => {
- self.handle_metadata(&mut stream)
- }
+ ("GET", "/.well-known/oauth-authorization-server") => self.handle_metadata(&mut stream),
("GET", "/jwks") => self.handle_jwks(&mut stream),
("GET", "/authorize") => self.handle_authorize(&mut stream, &query_params),
("POST", "/token") => self.handle_token(&mut stream, &request),
@@ -166,11 +164,14 @@ impl Server {
fn handle_token(&self, stream: &mut TcpStream, request: &str) {
let body = self.extract_body(request);
let form_params = self.parse_form_data(&body);
-
+
// Extract Authorization header from request
let auth_header = self.extract_auth_header(request);
- match self.oauth_server.handle_token(&form_params, auth_header.as_deref()) {
+ match self
+ .oauth_server
+ .handle_token(&form_params, auth_header.as_deref())
+ {
Ok(token_response) => {
self.send_json_response(stream, 200, "OK", &token_response);
}
@@ -206,11 +207,12 @@ impl Server {
fn extract_auth_header(&self, request: &str) -> Option<String> {
let lines: Vec<&str> = request.lines().collect();
- for line in lines.iter().skip(1) { // Skip the request line
+ for line in lines.iter().skip(1) {
+ // Skip the request line
if line.to_lowercase().starts_with("authorization:") {
return Some(line[14..].trim().to_string()); // Skip "Authorization: "
}
}
None
}
-} \ No newline at end of file
+}