服务器端 session 尚未成为Snap Framework的一部分。有没有一种方法可以添加某种服务器端状态?

假设我要为每个HTTP请求增加一个计数器。我该怎么办?

最佳答案

最简单的方法是将状态置于mvar后面:

fooHandler :: MVar Int -> Snap ()
fooHandler mvar = do
    x <- liftIO $ modifyMVar mvar $ \y -> let y'=y+1 in (y',y')
    writeBS $ S.pack $ "Incremented counter to: " ++ show x

初始化站点时初始化mvar。希望这可以帮助。

关于haskell - 如何使用Snap Framework维护服务器端状态?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3903205/

10-11 13:12