Cloudflare Workers

Worker structure and patterns

Cloudflare Workers

Worker Structure

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const url = new URL(request.url)
    const path = url.pathname
    
    if (path.startsWith('/api/')) {
      return handleApiRequest(request, env)
    }
    
    return handleStaticAssets(request, env)
  }
}

Environment Variables

interface Env {
  DB: D1Database
  IMAGES: R2Bucket
  JWT_SECRET: string
  PRESENCE: DurableObjectNamespace
}

Request Handling

  • Parse URL and path
  • Get query parameters
  • Read request body
  • Return JSON responses