From 4c7fea692e60de6d67120f4c68d6816d7c3107f2 Mon Sep 17 00:00:00 2001 From: "eric.minning" Date: Wed, 29 Oct 2025 12:34:27 +0100 Subject: [PATCH] Finished the basic "Routers" and tested them. --- API-Skeleton/main.js | 4 +-- API-Skeleton/routers/document_Router.js | 32 +++++++++++++++++++ API-Skeleton/routers/video_Router.js | 42 +++++++++++++++---------- 3 files changed, 59 insertions(+), 19 deletions(-) create mode 100644 API-Skeleton/routers/document_Router.js diff --git a/API-Skeleton/main.js b/API-Skeleton/main.js index 48c39b1..2d42d41 100644 --- a/API-Skeleton/main.js +++ b/API-Skeleton/main.js @@ -1,7 +1,7 @@ const express = require('express'); const video_Router = require("./routers/video_Router.js"); +const document_Router = require("./routers/document_Router.js"); const app = express(); -app.use(express.json); const PORT = process.env.PORT || 3000; @@ -14,4 +14,4 @@ app.get("/api/v1/healthcheck", async (req,res) =>{ }); app.use("/videos", video_Router); -app.use("/documents", documents); \ No newline at end of file +app.use("/documents", document_Router); \ No newline at end of file diff --git a/API-Skeleton/routers/document_Router.js b/API-Skeleton/routers/document_Router.js new file mode 100644 index 0000000..689dbe6 --- /dev/null +++ b/API-Skeleton/routers/document_Router.js @@ -0,0 +1,32 @@ +const express = require('express'); + +const router = express.Router(); + +//Getting a list of all existing documents +router.get("/", async(req, res) =>{ + try { + res.status(200).json({documents: []}); //TODO: array full of the documents names + } catch (e) { + res.status(404).send("Documents not found"); + } +}); + +//Getting a specific document +router.get("/:id", async(req, res) => { + try { + res.status(200).json({dokument_URL: ""}); //TODO: return the specific document + } catch (e) { + res.status(404).send("Document not found"); + } +}); + +//Deleting a specific document +router.delete("/:id", async(req, res) => { + try { + res.status(200).send("Document deleted."); //TODO: delet the specific document + } catch (e) { + res.status(500).send("Error trying to delete a document"); + } +}); + +module.exports = router; \ No newline at end of file diff --git a/API-Skeleton/routers/video_Router.js b/API-Skeleton/routers/video_Router.js index c10b97b..886d5d9 100644 --- a/API-Skeleton/routers/video_Router.js +++ b/API-Skeleton/routers/video_Router.js @@ -2,20 +2,10 @@ const express = require('express'); const router = express.Router(); -router.get("/", async(req, res) => { - try { - res.send("Videos"); - res.status(200).send("Videos send."); - } catch (e) { - res.status(500).send("Error trying to get the video files.") - } - -}); - +//Uploading a video file router.post("/", async(req, res) =>{ try{ - res.send("videos send"); - res.status(201).send("Video file uploaded."); + res.status(201).json({video:"VideoID"}); //TODO: return id as json } catch(e){ res.status(500).send("Error trying to upload video file."); @@ -23,15 +13,33 @@ router.post("/", async(req, res) =>{ }); -router.get("/{id}", async(req, res) => { +//Requesting a list of all video files +router.get("/", async(req, res) => { try { - res.send("Video with id"); - res.status(200).send("Video details acquired."); + res.status(200).json({videos:[]}); //TODO: return a json array showing all video files } catch (e) { - + res.status(500).send("Error trying to get the video files.") + } + +}); + +//Getting a video file by id +router.get("/:id", async(req, res) => { + try { + res.status(200).json({video: "id"}); //TODO: return the details regarding a specific video + } catch (e) { + res.status(401).send("Unknown ID.") } }); +//Deleting a video file +router.delete("/:id", async(req, res) =>{ + try { + res.status(200).send("Deleted file."); //TODO: delet the video file + } catch (e) { + res.status(204).send("No content."); + } +}); - +//To make the router useable in the main.js file module.exports = router; \ No newline at end of file