diff --git a/webapp/src/routes/__error.svelte b/webapp/src/routes/__error.svelte
new file mode 100644
index 0000000..27c027c
--- /dev/null
+++ b/webapp/src/routes/__error.svelte
@@ -0,0 +1,19 @@
+
+
+
+
+
+
{title}
+
diff --git a/webapp/src/routes/note/[id].svelte b/webapp/src/routes/note/[id].svelte
index 4b1e851..60c90cd 100644
--- a/webapp/src/routes/note/[id].svelte
+++ b/webapp/src/routes/note/[id].svelte
@@ -5,14 +5,27 @@
export const load: Load = async ({ params, fetch, session, stuff }) => {
const url = `${import.meta.env.VITE_BACKEND_URL}/note/${params.id}`;
const response = await fetch(url);
- const note: EncryptedNote = await response.json();
- note.insert_time = new Date(note.insert_time as unknown as string);
-
- return {
- status: response.status,
- props: { note }
- };
+ if (response.ok) {
+ try {
+ const note: EncryptedNote = await response.json();
+ note.insert_time = new Date(note.insert_time as unknown as string);
+ return {
+ status: response.status,
+ props: { note }
+ };
+ } catch {
+ return {
+ status: 500,
+ error: response.statusText
+ };
+ }
+ } else {
+ return {
+ status: response.status,
+ error: response.statusText
+ };
+ }
};