diff --git a/functions/api/contact.ts b/functions/api/contact.ts index 1770042..c55c29e 100644 --- a/functions/api/contact.ts +++ b/functions/api/contact.ts @@ -57,8 +57,26 @@ const parseFormFields = async (request: Request) => { }; const handlePost: PagesFunction = async ({ request, env }) => { + console.log( + "[contact] post start", + JSON.stringify({ + contentType: request.headers.get("content-type"), + hasTurnstileSecret: Boolean(env.TURNSTILE_SECRET_KEY), + hasResendApiKey: Boolean(env.RESEND_API_KEY), + hasFromEmail: Boolean(env.CONTACT_FROM_EMAIL), + }), + ); const { name, email, message, turnstileToken } = await parseFormFields(request); + console.log( + "[contact] fields", + JSON.stringify({ + hasName: Boolean(name), + hasEmail: Boolean(email), + hasMessage: Boolean(message), + hasTurnstileToken: Boolean(turnstileToken), + }), + ); if (!name || !email || !message) { return jsonResponse( @@ -97,6 +115,7 @@ const handlePost: PagesFunction = async ({ request, env }) => { 8000, "Turnstile", ); + console.log("[contact] turnstile status", verifyResponse.status); const verifyResult = (await verifyResponse.json()) as { success?: boolean; "error-codes"?: string[]; @@ -168,6 +187,7 @@ const handlePost: PagesFunction = async ({ request, env }) => { 8000, "Resend", ); + console.log("[contact] resend status", response.status); if (!response.ok) { const contentType = response.headers.get("content-type") ?? ""; const errorText = contentType.includes("application/json") @@ -207,6 +227,7 @@ export const onRequest: PagesFunction = async (context) => { } catch (error) { const message = error instanceof Error ? error.message : "Unknown error"; + console.error("[contact] unhandled", message); return jsonResponse( { ok: false, error: "Unhandled exception.", details: message }, 500,