路由与处理器:构建高效Web应用的核心
1. 路由定义
在构建Web应用时,路由定义是至关重要的一步。它决定了用户请求如何映射到具体的处理器函数,从而执行相应的业务逻辑。Yesod通过简洁且类型安全的方式实现了这一点。
使用 mkYesod 函数
mkYesod 是Yesod中用于定义路由的核心函数。它不仅简化了路由定义,还确保了路由的类型安全性。下面是一个简单的例子:
{-# LANGUAGE QuasiQuotes, TypeFamilies, TemplateHaskell #-}
import Yesod
data App = App
mkYesod "App" [parseRoutes|
/ HomeR GET
/link1 Link1R GET
/link2 Link2R GET
/link3 Link3R GET
/link4 Link4R GET
|]
instance Yesod App where
getHomeR :: Handler Html
getHomeR = defaultLayout $ do
setTitle "Redirects"
[whamlet|
<p>
<a href=@{Link1R}>Click to start the redirect loop!
|]
getLink1R, getLink2R, getLink3R :: Handler ()
getLink1R = redirect L
超级会员免费看
订阅专栏 解锁全文
830

被折叠的 条评论
为什么被折叠?



