aboutsummaryrefslogtreecommitdiff
path: root/src/controllers
diff options
context:
space:
mode:
authorRitesh Ghosh <[email protected]>2023-08-03 23:22:53 +0530
committerRitesh Ghosh <[email protected]>2023-08-03 23:22:53 +0530
commitd503bb6c5c6c412deac29f55a0c734c68df29842 (patch)
treeb4d5d14c461121505db51230de9658c11f4021e1 /src/controllers
parentc2c01f88afa51e30bad465854bf773e7f98924cd (diff)
downloadaniwatch-api-d503bb6c5c6c412deac29f55a0c734c68df29842.tar.xz
aniwatch-api-d503bb6c5c6c412deac29f55a0c734c68df29842.zip
feat(newController): added `animeAboutInfo` controller
Diffstat (limited to 'src/controllers')
-rw-r--r--src/controllers/animeAboutInfo.controller.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/controllers/animeAboutInfo.controller.ts b/src/controllers/animeAboutInfo.controller.ts
new file mode 100644
index 0000000..6cde2c7
--- /dev/null
+++ b/src/controllers/animeAboutInfo.controller.ts
@@ -0,0 +1,25 @@
+import { scrapeAnimeAboutInfo } from "../parsers";
+import createHttpError from "http-errors";
+import { Request, Response, NextFunction, Handler } from "express";
+
+// /anime/info?id=${anime-id}
+const getAnimeAboutInfo: Handler = async (
+ req: Request,
+ res: Response,
+ next: NextFunction
+) => {
+ try {
+ const id = req.query.id ? decodeURIComponent(req.query.id as string) : null;
+ if (id === null)
+ throw createHttpError.BadRequest("Anime unique id required");
+
+ const data = await scrapeAnimeAboutInfo(id);
+
+ res.status(200).json(data);
+ } catch (err: any) {
+ console.error(err);
+ next(err);
+ }
+};
+
+export default getAnimeAboutInfo;