Popularity
0.6
Declining
Activity
0.0
Stable
1
1
0
Monthly Downloads: 6
Programming language: Haskell
License: BSD 3-clause "New" or "Revised" License
Tags:
Value
Add another 'Value' Package
README
hs-server-starter
Description
Provides a utility to write server program which can be called via Perl's [https://github.com/kazuho/p5-Server-Starter](start_server) program using Haskell.
This module does not provide a Haskell implementation of start_server
,
so you need to use the original Perl version or use
a version ported to golang.
SINOPSIS
Since the listenAll
function returns a listened Network.Socket
, please call
accept
on it.
import qualified Network.ServerStarter.Socket as Starter
import qualified Network.Socket as Socket
import qualified Network.Wai as Wai
import qualified Network.Wai.Handler.Warp as Warp
main :: IO ()
main = do
(socket:_) <- Starter.listenAll
Socket.SockAddrInet port _ <- Socket.getSocketName socket
let setting = Warp.setPort (fromEnum port)
$ Warp.defaultSettings
Warp.runSettingsSocket setting socket app
app :: Wai.Application
app = ...
Then run start_server
and access to http://localhost:12345
.
$ start_server --port 12345 -- stack exec server-starter-warp-example
Author
Masahiro Honma ([email protected])