在express.js

时间:2016-05-06 14:17:00

标签: node.js express response etag

我正在使用expressjs作为框架在nodejs中编写一个restful api。我有以下代码

.get(function(request,response)
{ 
     Production.find(function(err, prods) {

        if (err)
            response.send(400, {success:false, error: err}); 
        response.send(200, prods);

        console.log(response._headers);

    }); 
});

现在我想在实际发送响应之前阅读响应的标头。我想要这样,以便我可以读取ETag值,从而检查是否应该再次发送数据。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

req.stale可能就是您想要使用的内容。以下是req.stalereq.fresh的文档。

两种方法都会返回一个布尔truefalse,您可以在逻辑中使用它。

app.get('/', (req, res, next) => {
    if (req.stale) return res.sendStatus(304);

    res.render('your/template'); // or .send() or whatever sauce you choose
});