如果更改API中的计数标题,但响应限制没有更改,可能是因为在API代码中限制了响应大小。解决方法是要同时更改计数标题和响应限制。
示例代码:
在以下代码中,我将更改响应限制以匹配计数标题。
app.get('/items', function(req, res) {
var limit = req.query.limit ? parseInt(req.query.limit) : 50;
var offset = req.query.offset ? parseInt(req.query.offset) : 0;
// Original response size limit set to 50
Item.find({})
.skip(offset)
.limit(limit)
.exec(function(err, items) {
if (err) {
return res.status(500).json(err);
}
// Changing response limit to match count header limit
Item.count({}, function(err, count) {
if (err) {
return res.status(500).json(err);
}
res.set('X-Total-Count', count);
var maxLimit = 100;
var limitedCount = Math.min(count - offset, maxLimit);
res.json(items.slice(0, limitedCount));
});
});
});