使用csrf校验,如果form设置mutipart/form-data 就失效,如何解决
发布于 10 年前 作者 irou1217 4878 次浏览 最后一次编辑是 8 年前 来自 问答

我使用csrf做校验,但是当我在表单中设置了form的 enctype="multipart/form-data"后,校验一直提示session失效如何解决? 我试着在post时显示用buyboy校验,但是还是一样提示session失效。求解决办法: app.js

app.use csrf()
exports.upload = (req,res)->
  #Explicitly handle uploads
  busboy = new Busboy({ headers: req.headers })
  busboy.on 'file', (fieldname, file, filename, encoding, mimetype)->
    saveTo = path.join(process.cwd() + '/public/images/', path.basename(fieldname) + path.extname(filename))
    file.pipe(fs.createWriteStream(saveTo))

  busboy.on 'finish', ()->
    req.flash('success', '文件上传成功!');
    res.redirect('/')

  return req.pipe(busboy);
2 回复

放到 http 头里是个办法

@jysperm 什么意思 没明白

回到顶部