/** * Recommendation endpoint * POST /api/recommend → Worker POST /recommend */ import { type PagesFunction } from '@cloudflare/workers-types'; import { Env, createCorsPreflightResponse, createErrorResponse, proxyToWorker, } from '../_shared/proxy'; export const onRequestPost: PagesFunction = async ({ request, env }) => { try { // Read request body const body = await request.text(); // Validate JSON if (body) { try { JSON.parse(body); } catch { return createErrorResponse('Invalid JSON in request body', 400); } } return proxyToWorker(env, '/recommend', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body, }); } catch (error) { console.error('[Recommend] Failed to process request:', error); return createErrorResponse( 'Failed to process recommendation request', 500, error instanceof Error ? error.message : String(error) ); } }; export const onRequestOptions: PagesFunction = async () => { return createCorsPreflightResponse(); };