Skip to content

Commit df2e11b

Browse files
committed
fetch main images first
1 parent 7b7fd86 commit df2e11b

File tree

1 file changed

+18
-13
lines changed

1 file changed

+18
-13
lines changed

api/v2/images/[id].js

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
// @ts-check
22
import { imageMap } from "../images.js";
33

4+
const mainImagesPromise = fetch(
5+
"https://assets.gi-tcg.guyutongxue.site/api/v2/images",
6+
).then((r) => r.json());
7+
48
/**
59
* @typedef {import("@vercel/node").VercelRequest} VercelRequest
610
* @typedef {import("@vercel/node").VercelResponse} VercelResponse
@@ -12,27 +16,28 @@ import { imageMap } from "../images.js";
1216
* @param {VercelResponse} res
1317
* @returns
1418
*/
15-
export default function handler(req, res) {
19+
export default async function handler(req, res) {
1620
const { id, thumb } = req.query;
1721
if (Array.isArray(id)) {
18-
res.status(400)
19-
.send("Bad request (multiple id)");
22+
res.status(400).send("Bad request (multiple id)");
2023
return;
2124
}
2225
const image = imageMap[id];
2326
if (!image) {
24-
res.status(404)
25-
.send("Not found");
27+
res.status(404).send("Not found");
2628
return;
2729
}
28-
const hakushinNotProvidedIds = [
29-
300006
30-
];
30+
const mainImages = await mainImagesPromise;
3131
let url;
32-
if (!hakushinNotProvidedIds.includes(Number(id)) && image.includes("CardFace")) {
33-
url = `https://api.hakush.in/gi/UI/${image}.webp`;
32+
if (mainImages[id]) {
33+
url = `https://assets.gi-tcg.guyutongxue.site/assets/${
34+
thumb ? "thumbs/" : ""
35+
}${image}.webp`;
3436
} else {
35-
url = `https://assets.gi-tcg.guyutongxue.site/assets/${thumb ? 'thumbs/' : '' }${image}.webp`;
37+
url = `https://api.hakush.in/gi/UI/${image}.webp`;
3638
}
37-
res.status(307).setHeader("Location", url).send(void 0);
38-
}
39+
res
40+
.status(307)
41+
.setHeader("Location", url)
42+
.send(void 0);
43+
}

0 commit comments

Comments
 (0)