From 9c94f66753ab8d8b48ea29c4ffc855c68c5b1d55 Mon Sep 17 00:00:00 2001 From: multipleof4 Date: Thu, 2 Oct 2025 11:07:49 -0700 Subject: [PATCH] Feat: Logout endpoint to clear session --- functions/api/logout.js | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 functions/api/logout.js diff --git a/functions/api/logout.js b/functions/api/logout.js new file mode 100644 index 0000000..e812e0f --- /dev/null +++ b/functions/api/logout.js @@ -0,0 +1,7 @@ +export async function onRequest({ request, env }) { + const sid = (request.headers.get('Cookie')||'').match(/session_id=([^;]+)/)?.[1]; + if (sid) await env.D1_SPCHCAP.prepare('DELETE FROM sessions WHERE id = ?').bind(sid).run(); + + const cookie = `session_id=; Domain=.speech.capital; Path=/; Expires=Thu, 01 Jan 1970 00:00:00 GMT`; + return new Response(null, { status: 302, headers: { 'Set-Cookie': cookie, 'Location': '/' } }); +}