diff options
| author | Andrew <saintruler@gmail.com> | 2020-11-27 22:32:26 +0400 |
|---|---|---|
| committer | Andrew <saintruler@gmail.com> | 2020-11-27 22:32:26 +0400 |
| commit | dd73de2e563c332c5a90bb21c5c7e6cbebc0ab86 (patch) | |
| tree | d23b3846beb6f93c91762cd56a929d9226838d45 | |
| parent | 46d7f5d2d88a62ed2c77514c33d97e25d737881c (diff) | |
Added settings files
| -rw-r--r-- | Main.hs | 15 | ||||
| -rw-r--r-- | Settings.hs | 4 | ||||
| -rw-r--r-- | haskell-web.cabal | 7 |
3 files changed, 19 insertions, 7 deletions
@@ -16,22 +16,25 @@ import Web.Response import Web.Router import Routes +import Settings (host, port) + main :: IO () main = do - print "Server launched" - runTCPServer Nothing "3000" talk + let hostStr = case host of + Just smt -> smt + Nothing -> "0.0.0.0" + + putStrLn $ "Server launched on " ++ hostStr ++ ":" ++ port + runTCPServer host port talk where talk s = do msg <- recv s 1024 - -- print msg - print "Got request" + putStrLn "Got request" unless (S.null msg) $ do let (request, _, _) = parseHttp $ decodeUtf8 msg response <- resolve routesTable $ request sendAll s $ encodeUtf8 (formResponse response) - --- from the "network-run" package. runTCPServer :: Maybe HostName -> ServiceName -> (Socket -> IO a) -> IO a runTCPServer mhost port server = withSocketsDo $ do addr <- resolve diff --git a/Settings.hs b/Settings.hs new file mode 100644 index 0000000..0d55606 --- /dev/null +++ b/Settings.hs @@ -0,0 +1,4 @@ +module Settings where + +host = Nothing +port = "3000" diff --git a/haskell-web.cabal b/haskell-web.cabal index 4141764..9fd655e 100644 --- a/haskell-web.cabal +++ b/haskell-web.cabal @@ -19,8 +19,13 @@ executable haskell-web , Web.Utils , Views , Routes + , Settings -- other-extensions: build-depends: - base >=4.14 && <4.15, text, http-types, bytestring, network + base >=4.14 && <4.15 + , text + , http-types + , bytestring + , network -- hs-source-dirs: default-language: Haskell2010 |