Skip to content

Commit 972b561

Browse files
genutesla3327zoey-kaiser
authored
fix: Don't fetch session during nitro prerender (#521)
Co-authored-by: Michael Thiessen <[email protected]> Co-authored-by: Zoey <[email protected]>
1 parent 7234c66 commit 972b561

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/runtime/plugin.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { addRouteMiddleware, defineNuxtPlugin, useRuntimeConfig } from '#app'
2+
import { getHeader } from 'h3'
23
import authMiddleware from './middleware/auth'
34
import { useAuth, useAuthState } from '#imports'
45

@@ -7,8 +8,14 @@ export default defineNuxtPlugin(async (nuxtApp) => {
78
const { data, lastRefreshedAt } = useAuthState()
89
const { getSession } = useAuth()
910

11+
// Skip auth if we're prerendering
12+
let nitroPrerender = false
13+
if (nuxtApp.ssrContext) {
14+
nitroPrerender = getHeader(nuxtApp.ssrContext.event, 'x-nitro-prerender') !== undefined
15+
}
16+
1017
// Only fetch session if it was not yet initialized server-side
11-
if (typeof data.value === 'undefined') {
18+
if (typeof data.value === 'undefined' && !nitroPrerender) {
1219
await getSession()
1320
}
1421

0 commit comments

Comments
 (0)