hsoz-0.0.0.2: example/BewitServer.hs
module BewitServer where
import Data.Text (Text)
import Data.Default (def)
import Network.HTTP.Types.Status (status200)
import Network.Wai
import Network.Wai.Handler.Warp
import Common
import Network.Hawk.Server.Types
import qualified Network.Hawk.Server as Hawk
import Network.Hawk.Middleware (bewitAuth)
serverMain :: IO ()
serverMain = run 8000 (middleware app)
auth :: ClientId -> IO (Either String (Credentials, Text))
auth _ = return $ Right (Credentials sharedKey (HawkAlgo SHA256), "Steve")
middleware :: Middleware
middleware = bewitAuth def auth
app :: Application
app req respond = respond $ responseLBS status200 [] "hello"