现在我正在使用https://github.com/baugarten/node-restful帮助工作API,问题是什么?
我在Express框架中工作,有没有办法保护" GET"其他网站要求我的。
我使用来自快递的CSRF,但只能通过POST,PUT,DELETE方法使用FOrbidden 403的消息进行处理,因为在控制台中进行卷曲,但是如果我对Get方法进行卷曲curl localhost:3000 /发布那个给出一个包含所有帖子的数组。
app.use(express.csrf());
app.use(function(req, res, next){
res.locals.token = req.session._csrf;
next();
});
app.use(app.router);
你建议我什么?还有其他模块可以更好地运作Api吗?如何保护nodejs中的Api?哈维尔学习的最佳实践是什么?
感谢您的帮助。
答案 0 :(得分:2)
尝试使用旨在实现此目的的Express中间件。例如:
var express = require('express');
var app = express();
// simple middle ware to protect your URI
app.use(function(req, res, next){
if (req.method == 'GET') {
if (!req.locale.token) { res.send(403); } // custom to fit your policy
else if (req.protocol !== "https") {res.redirect("your-secure-url");}
else { next(); }
}
});