infra/gmem.ca/functions/.well-known/webfinger.js
Gabriel Simmer d537b8d626
Some checks failed
Lint / lint (push) Has been cancelled
Sync gmem.ca / sync (push) Failing after 11s
Update gmem.ca publishing workflow
2023-12-23 12:46:32 +00:00

15 lines
655 B
JavaScript

export async function onRequest(context) {
const { searchParams } = new URL(context.request.url)
let name = searchParams.get('resource')
if (name == undefined || name == "") {
return new Response("not found", { status: 404 });
}
let json = await fetch("https://gmem.ca/.well-known/webfinger.json");
let j = await json.json();
let subject = j.filter(obj => obj.subject == name)[0];
if (subject == undefined || Object.keys(subject).length == 0) {
return new Response("not found", { status: 404 });
}
return new Response(JSON.stringify(subject), { headers: { "Content-Type": "application/jrd+json" }});
};