aboutsummaryrefslogtreecommitdiff
path: root/src/Cors.hs
diff options
context:
space:
mode:
authoradambrangenberg <adabran06@gmail.com>2025-12-07 06:36:43 +0100
committeradambrangenberg <adabran06@gmail.com>2025-12-07 06:36:43 +0100
commit2b48a574e8b9fed03a5c1969af4bb1e338f1be26 (patch)
treef31c92f7788969b034838b8ec0ea7e187a746fc2 /src/Cors.hs
parentfb14daae9d3bc05a0d18f58875ef54e328081f19 (diff)
implemented section 1-3
Diffstat (limited to 'src/Cors.hs')
-rw-r--r--src/Cors.hs25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/Cors.hs b/src/Cors.hs
new file mode 100644
index 0000000..ccfcec5
--- /dev/null
+++ b/src/Cors.hs
@@ -0,0 +1,25 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+module Cors (corsMiddleware) where
+
+import Network.Wai.Middleware.Cors
+ ( simpleCorsResourcePolicy
+ , cors
+ , CorsResourcePolicy(..)
+ )
+import Network.Wai (Middleware)
+import Data.ByteString (ByteString)
+
+matrixCorsPolicy :: CorsResourcePolicy
+matrixCorsPolicy = simpleCorsResourcePolicy
+ { corsOrigins = Just ([], True) -- Access-Control-Allow-Origin: *
+ , corsMethods = [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ]
+ , corsRequestHeaders =
+ [ "X-Requested-With"
+ , "Content-Type"
+ , "Authorization"
+ ]
+ }
+
+corsMiddleware :: Middleware
+corsMiddleware = cors (const $ Just matrixCorsPolicy)