From 07431cc22ba17d74762e4104d44511d0bc1434e2 Mon Sep 17 00:00:00 2001 From: J-onasJones Date: Sat, 23 Sep 2023 12:59:15 +0200 Subject: [PATCH] add: apitoken and http header reader --- .../me/jonasjones/mcwebserver/web/HttpServer.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/me/jonasjones/mcwebserver/web/HttpServer.java b/src/main/java/me/jonasjones/mcwebserver/web/HttpServer.java index e8b07b7..3a6e38a 100644 --- a/src/main/java/me/jonasjones/mcwebserver/web/HttpServer.java +++ b/src/main/java/me/jonasjones/mcwebserver/web/HttpServer.java @@ -7,6 +7,7 @@ import me.jonasjones.mcwebserver.web.api.v1.ApiHandler; import me.jonasjones.mcwebserver.web.api.v1.ApiRequests; import me.jonasjones.mcwebserver.web.api.v1.ApiRequestsUtil; +import java.awt.desktop.SystemEventListener; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.IOException; @@ -96,6 +97,7 @@ public class HttpServer implements Runnable { PrintWriter out = null; BufferedOutputStream dataOut = null; String fileRequested = null; + String apiToken; try { // we read characters from the client via input stream on the socket @@ -112,6 +114,16 @@ public class HttpServer implements Runnable { String method = parse.nextToken().toUpperCase(); // we get the HTTP method of the client // we get file requested fileRequested = parse.nextToken().toLowerCase(); + String header; + while ((header = in.readLine()) != null && !header.isEmpty()) { + + // Check if the header contains your API token + if (header.startsWith("Authorization: Bearer ")) { + apiToken = header.substring("Authorization: Bearer ".length()); + System.out.println("API Token: " + apiToken); + // Now you have the API token, you can use it for authentication. + } + } // we support only GET and HEAD methods, we check if (!method.equals("GET") && !method.equals("HEAD")) {