我对Yesod的CSRF保护感到困惑,以及Yesod的形式如何运作。我的理解是,Yesod的表格系统使用了一个"令牌"它作为隐藏字段传递给表单的HTML实现。处理表单时,将令牌与服务器上存储的(或至少重新创建的)令牌进行比较。我想跟踪这一点,因为我的开发环境中虚假地触发了CSRF保护,我想改变我的环境,以便表单在开发中与生产中的工作方式相同。
那么Yesod的CSRF令牌"取决于"?
答案 0 :(得分:5)
令牌存储在用户会话中。您可以通过以下方式访问它:
fmap reqToken getRequest