feat: add more error handling

This commit is contained in:
2024-06-07 23:13:30 -04:00
parent 6fd2cc4feb
commit c35c9b9e09
9 changed files with 71 additions and 66 deletions

View File

@@ -33,13 +33,13 @@ const route = createRoute({
},
description: "Returns a list of episodes",
},
404: {
500: {
content: {
"application/json": {
schema: ErrorResponseSchema,
},
},
description: "Returns an empty list because episodes not found",
description: "Error fetching episodes",
},
},
});
@@ -49,7 +49,7 @@ const app = new OpenAPIHono<Env>();
app.openapi(route, async (c) => {
const aniListId = Number(c.req.param("aniListId"));
const episodes = await fetchFromMultipleSources([
const { result: episodes, errors } = await fetchFromMultipleSources([
() => {
const isAnifyEnabled = readEnvVariable<boolean>(c.env, "ENABLE_ANIFY");
return getEpisodesFromAnify(isAnifyEnabled, aniListId);
@@ -64,13 +64,13 @@ app.openapi(route, async (c) => {
),
]);
if (!episodes) {
return c.json(ErrorResponse, { status: 404 });
if (errors?.length > 0) {
return c.json(ErrorResponse, { status: 500 });
}
return c.json({
success: true,
result: episodes,
result: episodes ?? [],
});
});