3Dbelte in gitea

This commit is contained in:
titusvermesan
2024-11-27 11:12:22 +01:00
parent 6165587bbd
commit bba5b8e106
22 changed files with 3191 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
<script>
import { writable } from 'svelte/store';
const token = writable('');
const payload = writable();
const onSendClick = async () => {
const response = await fetch('/api/login', { method: 'POST' });
const data = await response.json();
$token = data?.token;
};
const onReadClick = async () => {
const response = await fetch('/api/me', {
method: 'GET',
headers: {
Authorization: `Bearer ${$token}`
}
});
$payload = await response.json();
};
</script>
<h1>Welcome to 3D-Belte</h1>
<p>Visit <a href="/about">about page</a> to read the documentation. First press send, than read.</p>
<div class="body">
<div class="form">
<span>JWT Token</span>
<textarea>{$token}</textarea>
<span>Payload</span>
<textarea>{JSON.stringify($payload)}</textarea>
<button on:click={onSendClick}>send</button>
<button on:click={onReadClick}>read</button>
</div>
</div>
<style>
.body {
margin: 0;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
align-content: center;
}
.form {
width: 500px;
}
textarea {
width: 100%;
height: 100px;
border: 1px solid gray;
}
</style>

View File

@@ -0,0 +1 @@
<p> Dies ist eine Dokumentation </p>

View File

@@ -0,0 +1,10 @@
import { json } from '@sveltejs/kit';
import jwt from "jsonwebtoken";
export async function POST() {
const token = await jwt.sign({
id: 'sample-id',
secret: 'secret'
},"shhhhh");
return json({ token });
}

View File

@@ -0,0 +1,14 @@
import { error } from '@sveltejs/kit';
import { json } from '@sveltejs/kit';
import { verify } from 'jsonwebtoken';
export function GET({ request }) {
const authorization = request.headers.get('authorization');
try {
const jwt = authorization.slice(7);
const decoded = verify(jwt, 'shhhhh');
return json(decoded);
} catch (err) {
throw error(404, { message: err.message });
}
}