From 45bcde3b797c4d8c854708541281c88171f97db3 Mon Sep 17 00:00:00 2001 From: ElnuDev Date: Sat, 27 Aug 2022 14:04:39 -0700 Subject: [PATCH] Add index image results, improve routes --- index.js | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/index.js b/index.js index a94ccd9..8e3849b 100644 --- a/index.js +++ b/index.js @@ -22,19 +22,13 @@ async function getResults(query) { }); } -app.get("/random/:query*.jpg", (request, response) => { +app.get(["/random/:query*.jpg" /* legacy routing */, "/:query/random.jpg", "/:query/random"], (request, response) => { getResults(request.params.query).then(results => { response.redirect(results[Math.floor(Math.random() * results.length)]); }); }); -app.get("/:query*.jpg", (request, response) => { - getResults(request.params.query).then(results => { - response.redirect(results[0]); - }); -}); - -app.get("/:query", (request, response) => { +app.get("/:query/list", (request, response) => { response.writeHead(200, { "Content-Type": "application/json" }); getResults(request.params.query).then(results => { response.write(JSON.stringify(results)); @@ -42,4 +36,16 @@ app.get("/:query", (request, response) => { }); }); +app.get(["/:query/:i.jpg", "/:query/:i"], (request, response) => { + getResults(request.params.query).then(results => { + response.redirect(results[request.params.i % results.length]); + }); +}); + +app.get(["/:query.jpg", "/:query"], (request, response) => { + getResults(request.params.query).then(results => { + response.redirect(results[0]); + }); +}); + app.listen(process.argv[2] ? process.argv[2] : 3000);