From 45bef156d064a380c7d445be640fb441d59dc5a8 Mon Sep 17 00:00:00 2001 From: Marsel Shayhin Date: Wed, 5 Nov 2025 10:50:07 +0100 Subject: [PATCH] fix(#1063): always include browser cookies by default --- src/runtime/utils/fetch.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/runtime/utils/fetch.ts b/src/runtime/utils/fetch.ts index 644152ec..6da63fe5 100644 --- a/src/runtime/utils/fetch.ts +++ b/src/runtime/utils/fetch.ts @@ -8,7 +8,7 @@ import type { H3Event } from 'h3' export async function _fetch( nuxt: ReturnType, path: string, - fetchOptions?: Parameters[1], + fetchOptions: Parameters[1] = {}, proxyCookies = false ): Promise { // This fixes https://github.com/sidebase/nuxt-auth/issues/927 @@ -28,10 +28,16 @@ export async function _fetch( } } + // Always include cookies to the request on browser by default + // https://github.com/sidebase/nuxt-auth/issues/1063 + if (!fetchOptions.credentials) { + fetchOptions.credentials = 'include' + } + // Add browser cookies to the request on server when `proxyCookies` param is set let event: H3Event | undefined if (import.meta.server && proxyCookies) { - const fetchOptionsHeaders = new Headers(fetchOptions?.headers ?? {}) + const fetchOptionsHeaders = new Headers(fetchOptions.headers ?? {}) event = await callWithNuxt(nuxt, useRequestEvent) @@ -40,7 +46,6 @@ export async function _fetch( const cookies = event.node.req.headers.cookie if (cookies) { fetchOptionsHeaders.set('cookie', cookies) - fetchOptions ??= {} fetchOptions.headers = fetchOptionsHeaders } }