From c4ec51e156a618071832170713a19f7a7e8165e0 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Mon, 9 Mar 2026 17:03:16 +0000 Subject: [PATCH 1/3] feat(dev): allow nuxt to provide a handler directly --- packages/nuxi/src/dev/utils.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/nuxi/src/dev/utils.ts b/packages/nuxi/src/dev/utils.ts index 6c262eff9..9840a781d 100644 --- a/packages/nuxi/src/dev/utils.ts +++ b/packages/nuxi/src/dev/utils.ts @@ -449,7 +449,12 @@ export class NuxtDevServer extends EventEmitter { this.loadDebounced(true, '.nuxt/dist directory has been removed') }) - if ('fetch' in this.#currentNuxt.server) { + if ('handler' in this.#currentNuxt.server) { + // Prefer a raw Node.js request handler (e.g., Vite's Connect middleware + // which handles both static assets and SSR/API via nitro/vite) + this.#handler = this.#currentNuxt.server.handler as RequestListener + } + else if ('fetch' in this.#currentNuxt.server) { this.#handler = toNodeHandler(this.#currentNuxt.server.fetch) as RequestListener } else { From 53fadd88a2056544eb517221476889b8cd9e3a5d Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Tue, 10 Mar 2026 10:34:32 +0000 Subject: [PATCH 2/3] chore: remove comment --- packages/nuxi/src/dev/utils.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/nuxi/src/dev/utils.ts b/packages/nuxi/src/dev/utils.ts index 9840a781d..937e72dcb 100644 --- a/packages/nuxi/src/dev/utils.ts +++ b/packages/nuxi/src/dev/utils.ts @@ -452,7 +452,6 @@ export class NuxtDevServer extends EventEmitter { if ('handler' in this.#currentNuxt.server) { // Prefer a raw Node.js request handler (e.g., Vite's Connect middleware // which handles both static assets and SSR/API via nitro/vite) - this.#handler = this.#currentNuxt.server.handler as RequestListener } else if ('fetch' in this.#currentNuxt.server) { this.#handler = toNodeHandler(this.#currentNuxt.server.fetch) as RequestListener From 6312c53bb0f4dba2627d4d64650e74486082172e Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Tue, 10 Mar 2026 10:35:05 +0000 Subject: [PATCH 3/3] chore: ugh --- packages/nuxi/src/dev/utils.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/nuxi/src/dev/utils.ts b/packages/nuxi/src/dev/utils.ts index 937e72dcb..d463c41ac 100644 --- a/packages/nuxi/src/dev/utils.ts +++ b/packages/nuxi/src/dev/utils.ts @@ -450,8 +450,7 @@ export class NuxtDevServer extends EventEmitter { }) if ('handler' in this.#currentNuxt.server) { - // Prefer a raw Node.js request handler (e.g., Vite's Connect middleware - // which handles both static assets and SSR/API via nitro/vite) + this.#handler = this.#currentNuxt.server.handler as RequestListener } else if ('fetch' in this.#currentNuxt.server) { this.#handler = toNodeHandler(this.#currentNuxt.server.fetch) as RequestListener