我现在对Scotty服务器有一个问题-- rescue对未找到的参数不起作用--我仍然可以从下面的代码中得到404:
post "/newsletter/create" ( do
(param "subscriber[email]") `rescue` (\msg -> text msg)
formContent <- param "subscriber[email]"
text $ "found! " ++ show formContent )我可以看到,当我只使用params时,我的数据就在那里,并用"subscriber[email]“进行索引。[逃跑是怎么回事?这方面的任何帮助都将是巨大的。
发布于 2014-12-01 18:17:45
经过一些清理,我开始工作了:
{-# LANGUAGE OverloadedStrings #-}
import Web.Scotty
import qualified Data.Text.Lazy as TL
main = scotty 3000 $ do
post "/newsletter/create" $ do
formContent <- (param "subscriber[email]") `rescue` (\msg -> return msg)
text $ "found! " `TL.append` formContent我做了很多修改,但关键是rescue被用作param的包装器,而不是改变任何内部状态,因此不应该调用它两次。方括号没有给我带来任何麻烦。
https://stackoverflow.com/questions/27233509
复制相似问题