Add response middleware and cache

This commit is contained in:
rijkvanzanten
2020-09-08 18:28:23 -04:00
parent 266c07fde7
commit b19ffd960b
27 changed files with 493 additions and 367 deletions

View File

@@ -1,7 +1,5 @@
import express from 'express';
import asyncHandler from 'express-async-handler';
import sanitizeQuery from '../middleware/sanitize-query';
import useCollection from '../middleware/use-collection';
import RevisionsService from '../services/revisions';
import MetaService from '../services/meta';
@@ -9,28 +7,26 @@ const router = express.Router();
router.get(
'/',
useCollection('directus_revisions'),
sanitizeQuery,
asyncHandler(async (req, res) => {
asyncHandler(async (req, res, next) => {
const service = new RevisionsService({ accountability: req.accountability });
const metaService = new MetaService({ accountability: req.accountability });
const records = await service.readByQuery(req.sanitizedQuery);
const meta = await metaService.getMetaForQuery(req.collection, req.sanitizedQuery);
const meta = await metaService.getMetaForQuery('directus_revisions', req.sanitizedQuery);
return res.json({ data: records || null, meta });
})
res.locals.payload = { data: records || null, meta };
return next();
}),
);
router.get(
'/:pk',
useCollection('directus_revisions'),
sanitizeQuery,
asyncHandler(async (req, res) => {
asyncHandler(async (req, res, next) => {
const service = new RevisionsService({ accountability: req.accountability });
const record = await service.readByKey(req.params.pk, req.sanitizedQuery);
return res.json({ data: record || null });
})
res.locals.payload = { data: record || null };
return next();
}),
);
export default router;