hensei-web/app/api/jobs/route.ts
Justin Edmund 2f757fc2a4 Fix Railway build errors by marking dynamic routes
- Add 'force-dynamic' export to API routes using cookies/searchParams
- Add 'force-dynamic' export to page components using dynamic features
- Create proper error pages without i18n complexity
- Fix "Dynamic server usage" errors during static generation

Routes now properly marked as dynamic will render at request time
instead of failing during build-time static generation.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 02:38:37 -07:00

35 lines
No EOL
1 KiB
TypeScript

import { NextRequest, NextResponse } from 'next/server'
import { fetchFromApi } from '~/app/lib/api-utils'
// Force dynamic rendering because we use searchParams
export const dynamic = 'force-dynamic'
// GET handler for fetching all jobs
export async function GET(request: NextRequest) {
try {
// Parse URL parameters
const searchParams = request.nextUrl.searchParams
const element = searchParams.get('element')
// Build query parameters
const queryParams: Record<string, string> = {}
if (element) queryParams.element = element
// Append query parameters
let endpoint = '/jobs'
const queryString = new URLSearchParams(queryParams).toString()
if (queryString) {
endpoint += `?${queryString}`
}
const data = await fetchFromApi(endpoint)
return NextResponse.json(data)
} catch (error: any) {
console.error('Error fetching jobs', error)
return NextResponse.json(
{ error: error.message || 'Failed to fetch jobs' },
{ status: error.response?.status || 500 }
)
}
}