From b64cd5ab775e08461dc8bfadd7cf92ebf5d2cc05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=BC=E3=83=BC=E3=83=AC?= Date: Sun, 13 Oct 2024 21:32:34 +0500 Subject: [PATCH] Update [releaseId].ts --- .../api/extension/episode/[releaseId].ts | 77 ++++++------------- 1 file changed, 25 insertions(+), 52 deletions(-) diff --git a/src/pages/api/extension/episode/[releaseId].ts b/src/pages/api/extension/episode/[releaseId].ts index 41d2aff..8743564 100644 --- a/src/pages/api/extension/episode/[releaseId].ts +++ b/src/pages/api/extension/episode/[releaseId].ts @@ -22,67 +22,40 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse) const seeleAPI = `https://cloud.seele.su/episode/${releaseId}.json`; try { - // Попробуем получить данные от Anixart const anixartRes = await axios.get(anixartAPI); let modifyedData = modifyData(anixartRes.data); - // Если данных нет, переходим к Seele API if (!modifyedData.types || modifyedData.types.length === 0) { - try { - const seeleRes = await axios.get(seeleAPI); + const seeleRes = await axios.get(seeleAPI); + modifyedData = modifyData(seeleRes.data); - // Проверяем, есть ли данные от Seele API - modifyedData = modifyData(seeleRes.data); - if (!modifyedData.types || modifyedData.types.length === 0) { - return res.json({ - code: 0, - types: [ - { - '@id': 1, - id: 1, - name: 'Это аниме недоступно!', - icon: null, - workers: 'Это аниме было полностью удалено с серверов anixart или вообще не было там изначально!', - is_sub: false, - episodes_count: 0, - view_count: 0, - pinned: false - } - ] - }); - } else { - return res.json({ is_blocked: true, ...modifyedData }); - } - } catch (seeleError) { - // Если Seele API вернул 404, обрабатываем это - if (seeleError.response && seeleError.response.status === 404) { - return res.json({ - code: 0, - types: [ - { - '@id': 1, - id: 1, - name: 'Это аниме недоступно!', - icon: null, - workers: 'Это аниме было полностью удалено с серверов anixart или вообще не было там изначально!', - is_sub: false, - episodes_count: 0, - view_count: 0, - pinned: false - } - ] - }); - } else { - console.error('Error fetching data from Seele API:', seeleError); - return res.status(500).json({ message: 'Error fetching data from Seele API' }); - } + if (!modifyedData.types || modifyedData.types.length === 0) { + // Если ни Anixart, ни Seele API не вернули данные + return res.json({ + code: 0, + types: [ + { + '@id': 1, + id: 1, + name: 'Это аниме недоступно!', + icon: null, + workers: 'Это аниме было полностью удалено с серверов anixart или вообще не было там изначально!', + is_sub: false, + episodes_count: 0, + view_count: 0, + pinned: false + } + ] + }); + } else { + return res.json({ is_blocked: true, ...modifyedData }); } } else { return res.json(modifyedData); } - } catch (anixartError) { - console.error('Error fetching data from Anixart API:', anixartError); - return res.status(500).json({ message: 'Error fetching data from Anixart API' }); + } catch (error) { + console.error('Error fetching data from Anixart or Seele API:', error); + res.status(500).json({ message: 'Internal Server Error' }); } }