我刚开始使用haskell,但我遇到了基本的“echo”REST 服务器的问题。
Spock 看起来是 REST 服务器的一个不错的起点,虽然我掌握了 State monad 的基础知识,但我在理解如何runState
在 spock 代码周围放置 a 时遇到了问题。
这是我到目前为止的代码。
{-# LANGUAGE OverloadedStrings #-}
module Main where
import Data.Monoid
import Web.Spock.Safe
import qualified Control.Monad.State as S
storeData :: String -> S.State String String
storeData val = do S.put val
return val
getData :: S.State String String
getData = do val <- S.get
return val
main :: IO ()
main =
runSpock 11350 $ spockT id $
do get "store" $
text "Would be a call to getData"