From cf8c5e3c8aa353a80a9a12840109690c14c88d6d Mon Sep 17 00:00:00 2001 From: Ender <33337309+e3ndr@users.noreply.github.com> Date: Tue, 19 Mar 2024 00:57:36 -0500 Subject: [PATCH] Daemon: Fix CORS preflight. --- .../log_strudel/daemon/api/API.java | 1 + .../log_strudel/daemon/api/RouteCORS.java | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/RouteCORS.java diff --git a/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/API.java b/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/API.java index 4e4efc2..6a99f08 100644 --- a/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/API.java +++ b/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/API.java @@ -53,6 +53,7 @@ public static void start() throws IOException { DummyPlugin dummy = new DummyPlugin(); sora.register(dummy); + sora.addProvider(dummy, new RouteCORS()); sora.addProvider(dummy, new RouteLines()); sora.addProvider(dummy, new RoutePing()); diff --git a/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/RouteCORS.java b/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/RouteCORS.java new file mode 100644 index 0000000..2ed8a10 --- /dev/null +++ b/daemon/src/main/java/co/casterlabs/log_strudel/daemon/api/RouteCORS.java @@ -0,0 +1,19 @@ +package co.casterlabs.log_strudel.daemon.api; + +import co.casterlabs.rakurai.io.http.HttpMethod; +import co.casterlabs.rakurai.io.http.StandardHttpStatus; +import co.casterlabs.rakurai.io.http.server.HttpResponse; +import co.casterlabs.sora.api.http.HttpProvider; +import co.casterlabs.sora.api.http.SoraHttpSession; +import co.casterlabs.sora.api.http.annotations.HttpEndpoint; + +public class RouteCORS implements HttpProvider { + + @HttpEndpoint(uri = "/.*", allowedMethods = { + HttpMethod.OPTIONS + }) + public HttpResponse onPostLine(SoraHttpSession session) { + return API.cors(session, HttpResponse.newFixedLengthResponse(StandardHttpStatus.OK)); + } + +}