在 Express 中生成 _csrf?

问题描述 投票:0回答:1

我是新手。我正在使用一个浏览器插件来访问我的节点服务器,并且需要 csrf 令牌。

我所拥有的并没有产生任何东西:

app.use(express.csrf());
app.dynamicHelpers({
    token: function(req, res) {
    return req.session._csrf;
  }
});

...然后我在我的玉文件中引用令牌

input(type="hidden", token=token)

我不明白应该生成令牌的是什么——猜测连接。无论如何,我看不到任何价值。

尝试过 console.log(token) 以及//未定义

我在here提出了问题并让它工作,但现在升级到节点.67并更新模块后就不行了。 如何在 Express 中生成 CSRF 代币?

对于运气不佳的人有什么帮助吗? :)

node.js express csrf node.js-connect
1个回答
1
投票

确保

app.use(express.csrf());
在您的
app.configure()
中的顺序正确。它需要遵循
express.session()
express.cookieParser()
app.bodyParser()
app.query()
——以及将提交的 CSRF 令牌解析为
req
对象的任何其他内容。

© www.soinside.com 2019 - 2024. All rights reserved.