在我在后端 api 中實(shí)現(xiàn) Redis 緩存之前,分頁(yè)在后端和前端工作正常,在緩存數(shù)據(jù)后,它不再工作。這是我在獲取所有數(shù)據(jù)之前運(yùn)行的中間件const checkCache = (req, res, next) => { client.get("posts", (err, data) => { if (err) { console.log(err); sendFailureResponse(res, 500, err); } if (data != null) { sendSuccessResponse(res, 200, JSON.parse(data)); } else { //proceed to next middleware function next(); } });};控制器const page = parseInt(req.query.page); const size = parseInt(req.query.size); const query = {}; if (page < 0 || page === 0) { sendFailureResponse(res, 400, "invalid page number") } query.skip = size * (page - 1); query.limit = size; const posts = await Post.find({}, {}, query).populate("user", ["name"]); client.setex("posts", 3600, JSON.stringify(posts)) sendSuccessResponse(res, 200, posts); } catch (err) { sendFailureResponse(res, 500, err.message); }如何從緩存中返回分頁(yè)結(jié)果?
來(lái)自 Redis 緩存的數(shù)據(jù)未分頁(yè)
翻翻過(guò)去那場(chǎng)雪
2024-01-18 17:14:39