refactor(backend): ♻️ extract sw middleware to redure main middleware complexity
This commit is contained in:
parent
a4c846241d
commit
8e56d5bd6d
|
@ -1,6 +1,7 @@
|
||||||
import { FreshContext } from '$fresh/server.ts'
|
import { FreshContext } from '$fresh/server.ts'
|
||||||
import { useCsp } from ':src/csp/middleware.ts'
|
import { useCsp } from ':src/csp/middleware.ts'
|
||||||
import { useSecurityHeaders } from ':src/security_headers/middleware.ts'
|
import { useSecurityHeaders } from ':src/security_headers/middleware.ts'
|
||||||
|
import { useServiceworker } from ':src/serviceworker/middleware.ts'
|
||||||
import { useSession } from ':src/session/middleware.ts'
|
import { useSession } from ':src/session/middleware.ts'
|
||||||
import { SessionStore } from ':src/session/mod.ts'
|
import { SessionStore } from ':src/session/mod.ts'
|
||||||
|
|
||||||
|
@ -15,11 +16,7 @@ export async function handler(request: Request, ctx: FreshContext) {
|
||||||
useSecurityHeaders(request, response, ctx)
|
useSecurityHeaders(request, response, ctx)
|
||||||
await useCsp(request, response, ctx)
|
await useCsp(request, response, ctx)
|
||||||
useSession(request, response, ctx)
|
useSession(request, response, ctx)
|
||||||
|
useServiceworker(request, response, ctx)
|
||||||
// Allow service worker to serve root scope
|
|
||||||
if (ctx.url.pathname.endsWith('island-startserviceworker.js')) {
|
|
||||||
response.headers.set('Service-Worker-Allowed', '/')
|
|
||||||
}
|
|
||||||
|
|
||||||
return response
|
return response
|
||||||
}
|
}
|
||||||
|
|
12
src/serviceworker/middleware.ts
Normal file
12
src/serviceworker/middleware.ts
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
import { FreshContext } from '$fresh/server.ts'
|
||||||
|
|
||||||
|
export function useServiceworker(
|
||||||
|
_request: Request,
|
||||||
|
response: Response,
|
||||||
|
ctx: FreshContext,
|
||||||
|
) {
|
||||||
|
// Allow service worker to serve root scope
|
||||||
|
if (ctx.url.pathname.endsWith('island-startserviceworker.js')) {
|
||||||
|
response.headers.set('Service-Worker-Allowed', '/')
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue