snort/functions/p/[id].ts
2023-04-14 10:50:06 +01:00

31 lines
716 B
TypeScript

interface Env {
}
export const onRequest: PagesFunction<Env> = async (context) => {
const id = context.params.id as string;
const next = await context.next();
try {
const rsp = await fetch(`https://api.snort.social/api/v1/og/tag/p/${id}`, {
method: "POST",
body: await next.arrayBuffer(),
headers: {
"user-agent": "Snort-Functions/1.0 (https://snort.social)",
"content-type": "text/plain"
}
});
if (rsp.ok) {
const body = await rsp.text();
if (body.length > 0) {
return new Response(body, {
headers: {
"content-type": "text/html"
}
});
}
}
} catch {
// ignore
}
return next;
}