求教,一个nodeclub的问题
发布于 12 年前 作者 xuange 4460 次浏览 最后一次编辑是 8 年前

最近在学习nodeclub的代码 ,在发布文章,上传图片的时候报错了,用node-inspector调试了一把,发现错误是出在express模块的express\node_modules\connect\lib\middleware\csrf.js这个文件中,代码如下:

module.exports = function csrf(options) {
  var options = options || {}
, value = options.value || defaultValue;

  return function(req, res, next){
// generate CSRF token
var token = req.session._csrf || (req.session._csrf = utils.uid(24));

// ignore GET (for now)
if ('GET' == req.method) return next();

// determine value
var val = value(req);

// check
**if (val != token) return utils.forbidden(res);**//这一行ckeck的时候

next();

} };

为什么会在这一么验证的时候出错呢?

//check
if (val != token) return utils.forbidden(res);
2 回复

README.md 里面有说

express/node_modules/connect/lib/middleware/csrf.js 添加:

if (req.body && req.body.user_action === 'upload_image') return next();

我用的是windows系统,装的时候是在其它地方 看的安装教程,没有看到那个,谢谢哈!!

回到顶部