由于您使用的是Express,因此可以使用其CSRF中间件(通过Connect):http://www.senchalabs.org/connect/csrf.html
您可以在此处查看评论来源:https://github.com/senchalabs/connect/blob/master/lib/middleware/csrf.js
您需要做的就是包含该中间件然后在您的POST表单(或PUT等任何变异状态的请求)中将变量设置_csrf为具有该值req.session._csrf.
检查示例:https://github.com/senchalabs/connect/blob/master/examples/csrf.js
UPDATE
从Connect 2.9.0开始,您必须使用req.csrfToken()而不是req.session._csrf
完整示例:https://github.com/senchalabs/connect/blob/master/examples/csrf.js
提交:https://github.com/senchalabs/connect/commit/70973b24eb1abe13b2da4f45c1edbb78c611d250
UPDATE2
连接中间件被分成不同的模块(和相关的repos),你可以在这里找到它们(包括CSRF):https://github.com/senchalabs/connect#middleware
| 归档时间: |
|
| 查看次数: |
10002 次 |
| 最近记录: |