Skip to content

Commit 029dadf

Browse files
committed
testing custom fetch
1 parent 200b653 commit 029dadf

File tree

3 files changed

+27
-12
lines changed

3 files changed

+27
-12
lines changed

src/hooks.server.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { type Handle, redirect } from "@sveltejs/kit"
22
import { createServerClient } from "@supabase/ssr"
33
import { sequence } from "@sveltejs/kit/hooks"
4-
import { PUBLIC_LOCAL_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY } from "$env/static/public"
4+
import { PUBLIC_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY } from "$env/static/public"
5+
import type { Database } from "$lib/types/supabase"
56

67
const redirects: Handle = async ({ event, resolve }) => {
78
if (event.url.pathname.startsWith("/refresh_token")) {
@@ -20,15 +21,20 @@ const redirects: Handle = async ({ event, resolve }) => {
2021
}
2122

2223
const supabase: Handle = async ({ event, resolve }) => {
23-
console.log("└⚡Server connecting to database: ", PUBLIC_LOCAL_SUPABASE_URL)
24-
event.locals.supabaseServer = createServerClient(PUBLIC_LOCAL_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, {
24+
event.locals.supabaseServer = createServerClient<Database>(PUBLIC_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, {
2525
cookies: {
2626
getAll: () => event.cookies.getAll(),
2727
setAll: (cookiesToSet) => {
2828
cookiesToSet.forEach(({ name, value, options }) => {
2929
event.cookies.set(name, value, { ...options, path: "/" })
3030
})
3131
}
32+
},
33+
global: {
34+
fetch: (input: string | URL | Request, init?: RequestInit) => {
35+
console.log("Server hook: ", input)
36+
return event.fetch(input, init)
37+
}
3238
}
3339
})
3440

src/lib/server/supabase.server.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import { SUPABASE_SERVICE_KEY } from "$env/static/private"
2-
import { PUBLIC_LOCAL_SUPABASE_URL } from "$env/static/public"
2+
import { PUBLIC_SUPABASE_URL } from "$env/static/public"
33
import type { Database } from "$lib/types/supabase"
44
import { formatError } from "$lib/utils"
55
import { type SupabaseClient, createClient, type Provider } from "@supabase/supabase-js"
66
import { error, redirect } from "@sveltejs/kit"
77

8-
console.log("└⚡Server connecting to admin database: ", PUBLIC_LOCAL_SUPABASE_URL)
9-
export const supabaseAdmin = createClient<Database>(PUBLIC_LOCAL_SUPABASE_URL, SUPABASE_SERVICE_KEY, {
8+
export const supabaseAdmin = createClient<Database>(PUBLIC_SUPABASE_URL, SUPABASE_SERVICE_KEY, {
109
auth: { autoRefreshToken: true, persistSession: false }
1110
})
1211

src/routes/+layout.ts

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
11
import { createBrowserClient, createServerClient, isBrowser } from "@supabase/ssr"
2-
import { PUBLIC_LOCAL_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, PUBLIC_SUPABASE_URL } from "$env/static/public"
2+
import { PUBLIC_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY } from "$env/static/public"
33
import type { Session, User } from "@supabase/supabase-js"
44

55
export const load = async ({ data, depends, fetch }) => {
66
depends("supabase:auth")
77
const isbrowser = isBrowser()
8-
console.log("└⚡", isbrowser ? "Client" : "Server", " connecting to database: ", PUBLIC_SUPABASE_URL)
8+
99
const supabaseClient = isbrowser
1010
? createBrowserClient(PUBLIC_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, {
11-
global: { fetch }
11+
global: {
12+
fetch: (input: string | URL | Request, init?: RequestInit) => {
13+
console.log("Layout Client: ", input)
14+
return fetch(input, init)
15+
}
16+
}
1217
})
13-
: createServerClient(PUBLIC_LOCAL_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, {
14-
global: { fetch },
18+
: createServerClient(PUBLIC_SUPABASE_URL, PUBLIC_SUPABASE_ANON_KEY, {
19+
global: {
20+
fetch: (input: string | URL | Request, init?: RequestInit) => {
21+
console.log("Layout Server: ", input)
22+
return fetch(input, init)
23+
}
24+
},
1525
cookies: {
1626
getAll() {
1727
return data.cookies
@@ -21,7 +31,7 @@ export const load = async ({ data, depends, fetch }) => {
2131

2232
let session: Session | null
2333
let user: User | null
24-
if (isBrowser()) {
34+
if (isbrowser) {
2535
const promises = await Promise.all([supabaseClient.auth.getSession(), supabaseClient.auth.getUser()])
2636
session = promises[0].data.session
2737
user = promises[1].data.user

0 commit comments

Comments
 (0)