diff --git a/src/runtime/server/services/serverSupabaseServiceRole.ts b/src/runtime/server/services/serverSupabaseServiceRole.ts index 8842997af..8c14d033e 100644 --- a/src/runtime/server/services/serverSupabaseServiceRole.ts +++ b/src/runtime/server/services/serverSupabaseServiceRole.ts @@ -1,6 +1,7 @@ import { createClient, SupabaseClient } from '@supabase/supabase-js' import type { H3Event } from 'h3' import { useRuntimeConfig } from '#imports' +import {defu} from "defu"; export const serverSupabaseServiceRole = (event: H3Event): SupabaseClient => { const { supabase: { serviceKey }, public: { supabase: { url, client: clientOptions } } } = useRuntimeConfig() @@ -12,7 +13,15 @@ export const serverSupabaseServiceRole = (event: H3Event): SupabaseClient // No need to recreate client if exists in request context if (!event.context._supabaseServiceRole) { - const supabaseClient = createClient(url, serviceKey, clientOptions) + const auth = { + detectSessionInUrl: false, + persistSession: false, + autoRefreshToken: false + } + + const options = defu({ auth }, clientOptions) + + const supabaseClient = createClient(url, serviceKey, options) event.context._supabaseServiceRole = supabaseClient }