【问题标题】:SailsJS session variable not able to be set on first page loadSailsJS 会话变量无法在第一页加载时设置
【发布时间】:2015-08-11 09:44:01
【问题描述】:

这是控制器:

rusty = require('rusty')

module.exports =
  index: (req, res)->
    console.log('submit', req.session)
    res.json({})

  captcha: (req, res)->
    _ref = rusty.captcha({
      width: 120
      height: 50
      chars: 'abcdefghijklmnopqrstuvwxyz0123456789'
      length: 4
      fonts: ['20px sans', '20px bold sans']
      noise: 50
    })
    canvas = _ref.canvas
    code = _ref.code
    req.session.captcha = code
    return canvas.toBuffer (err, buffer)->
      return res.end(buffer)

我有一条到captcha.png 的路由,它在此处调用验证码方法。图像 src 设置为 captcha.png。我希望在调用captcha 方法时,设置req.session.captcha,我可以使用它来验证index 方法中的表单。

但是,在重新启动服务器后首次加载页面时,未设置会话变量。如果我随后调用验证码方法,则会话变量已设置并可使用。

我假设这与尚未设置的会话 cookie 有关吗?或者还有什么我忽略的?

有什么想法吗?

【问题讨论】:

    标签: session sails.js


    【解决方案1】:

    啊,只是一个开发问题。事实上,我已经从前一个会话中设置了一个 cookie,这将使请求中的会话无效。实际上,将变量存储在错误的会话下。如果我在服务器重启后删除我的 cookie,那么页面刷新时一切正常。

    离开这里让其他人摸不着头脑。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-30
      • 2011-11-13
      • 2017-09-11
      • 2017-01-15
      • 1970-01-01
      • 2021-04-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多