aboutsummaryrefslogtreecommitdiff
path: root/Server/Main.hs
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2021-07-23 22:17:34 +0100
committerAryadev Chavali <aryadev@aryadevchavali.com>2021-07-23 23:14:09 +0100
commit5f4a3f8526df1cffd4cf39db20a9e601ced512bb (patch)
treec07e18926696067a96df2d51e5598d169197339a /Server/Main.hs
parent3086d98cdc9232e220eba202a7d903b43cc6a444 (diff)
downloadnumberdisplay-5f4a3f8526df1cffd4cf39db20a9e601ced512bb.tar.gz
numberdisplay-5f4a3f8526df1cffd4cf39db20a9e601ced512bb.tar.bz2
numberdisplay-5f4a3f8526df1cffd4cf39db20a9e601ced512bb.zip
(Server)+basic error handling and an index route
Diffstat (limited to 'Server/Main.hs')
-rw-r--r--Server/Main.hs32
1 files changed, 32 insertions, 0 deletions
diff --git a/Server/Main.hs b/Server/Main.hs
new file mode 100644
index 0000000..bed3de5
--- /dev/null
+++ b/Server/Main.hs
@@ -0,0 +1,32 @@
+{-# LANGUAGE OverloadedStrings #-}
+module Main where
+
+import Data.List
+import Text.Printf
+import Network.Wai
+import Network.HTTP.Types
+import Network.Wai.Handler.Warp (run)
+
+app :: Application
+app request respond = respond $
+ case rawPathInfo request of
+ "/" -> index
+ _ -> errorResponse
+
+index :: Response
+index =
+ responseLBS status200
+ [("Content-Type", "text/plain")]
+ "Hello, world!"
+
+errorResponse :: Response
+errorResponse =
+ responseFile status200
+ [("Content-Type", "text/plain")]
+ "pages/error.html"
+ Nothing
+
+main :: IO ()
+main = do
+ putStrLn $ "http://localhost:8080/"
+ run 8080 app