aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-09-13 01:22:55 -0700
committerFuwn <[email protected]>2023-09-13 01:22:55 -0700
commitefc4d2b0685976760d0fb38b1b555ad98df5760a (patch)
tree3ac7c88b3a6e484a07617dc33488fa8c5786fa04 /src
parentci(docker): bump bun to 1.0.1 git diff HEAD (diff)
downloaddue.moe-efc4d2b0685976760d0fb38b1b555ad98df5760a.tar.xz
due.moe-efc4d2b0685976760d0fb38b1b555ad98df5760a.zip
fix(updates): move parser to server-side
Diffstat (limited to 'src')
-rw-r--r--src/routes/api/manga-updates/+server.ts4
-rw-r--r--src/routes/api/novel-updates/+server.ts4
-rw-r--r--src/routes/literature-updates/+page.svelte24
3 files changed, 8 insertions, 24 deletions
diff --git a/src/routes/api/manga-updates/+server.ts b/src/routes/api/manga-updates/+server.ts
index 3325fb6b..63fc23bd 100644
--- a/src/routes/api/manga-updates/+server.ts
+++ b/src/routes/api/manga-updates/+server.ts
@@ -1,7 +1,9 @@
+import Parser from 'rss-parser';
+
export const GET = async ({ setHeaders }) => {
setHeaders({
'Cache-Control': 'public, max-age=600, s-maxage=600'
});
- return new Response((await fetch('https://www.mangaupdates.com/rss.php')).body);
+ return Response.json(await new Parser().parseURL('https://www.mangaupdates.com/rss.php'));
};
diff --git a/src/routes/api/novel-updates/+server.ts b/src/routes/api/novel-updates/+server.ts
index 7086a34f..5ce7e9cb 100644
--- a/src/routes/api/novel-updates/+server.ts
+++ b/src/routes/api/novel-updates/+server.ts
@@ -1,7 +1,9 @@
+import Parser from 'rss-parser';
+
export const GET = async ({ setHeaders }) => {
setHeaders({
'Cache-Control': 'public, max-age=600, s-maxage=600'
});
- return new Response((await fetch('https://api.syosetu.com/allnovel.Atom')).body);
+ return Response.json(await new Parser().parseURL('https://api.syosetu.com/allnovel.Atom'));
};
diff --git a/src/routes/literature-updates/+page.svelte b/src/routes/literature-updates/+page.svelte
index b4a4e148..fcbfa381 100644
--- a/src/routes/literature-updates/+page.svelte
+++ b/src/routes/literature-updates/+page.svelte
@@ -1,6 +1,5 @@
<script lang="ts">
import { onMount } from 'svelte';
- import RSSParser from 'rss-parser/dist/rss-parser.js';
type Feed = { items: { title: string; link: string }[] } | null | undefined;
@@ -8,27 +7,8 @@
let novelFeed: Feed = undefined;
onMount(async () => {
- let parser = new RSSParser();
-
- parser.parseURL('/api/novel-updates', (e: Error, f: Feed) => {
- if (e) {
- novelFeed = null;
-
- throw e;
- }
-
- novelFeed = f;
- });
-
- parser.parseURL('/api/manga-updates', (e: Error, f: Feed) => {
- if (e) {
- feed = null;
-
- throw e;
- }
-
- feed = f;
- });
+ novelFeed = await (await fetch('/api/novel-updates')).json();
+ feed = await (await fetch('/api/manga-updates')).json();
});
const reformat = (title: string) => {