如何在Yesod中禁用特定网址或子网站的会话?

wiz*_*wiz 6 session haskell yesod

我想禁用无头API端点的会话,但我必须保持它们打开,因为此服务还处理用户登录.

但是makeSessionBackend,无法访问Handler东西甚至是当前的URI isAuthorizedSource.

在我看来,我应该提升客户端会话后端代码并将其与包装器一起使用,直到我能从该WAI获得至少文本路径Request.

是不是有更好的方法告诉任何bakend忽略一些路线,如StaticR?

sig*_*ami 2

makeSessionBackend您的所有点都可以通过重写Yesod 类型类中的方法来修改。就像是

instance Yesod App where
    makeSessionBackend _ = fmap Just $ defaultClientSessionBackend expireTime filepath
      where expireTime = 24 * 60
Run Code Online (Sandbox Code Playgroud)