Restructure app for scale and easy access of routeId

This commit is contained in:
Ibitoye Rotimi Best
2021-07-12 05:55:57 +03:00
parent 4124a1fc02
commit 7e7bd28889
36 changed files with 707 additions and 620 deletions
+14
View File
@@ -0,0 +1,14 @@
const lessons = [{}];
const lookup = new Map();
lessons.forEach((lesson) => {
lookup.set(`${lesson.id}`, JSON.stringify(lesson));
});
export function getLessons() {
return lessons;
}
export function getLecture(id) {
return lookup.get(id);
}
+27
View File
@@ -0,0 +1,27 @@
import { getLecture } from './_lessons';
function writeJsonHead(res, statusCode) {
res.writeHead(statusCode, {
'Content-Type': 'application/json',
});
}
export function get(req, res, next) {
// the `id` parameter is available because
// this file is called [id].json.js
const { id } = req.params;
if (lookup.has(id)) {
writeJsonHead(res, 200);
res.end(lookup.get(id));
} else {
writeJsonHead(res, 404);
res.end(
JSON.stringify({
message: `Not found`,
})
);
}
}