mirror of
https://github.com/nlepage/go-wasm-http-server.git
synced 2025-03-10 17:29:10 +00:00
Provide ability to passthrough and hit network
This commit is contained in:
parent
57a311369e
commit
268c971467
6
sw.js
6
sw.js
@ -1,4 +1,4 @@
|
||||
function registerWasmHTTPListener(wasm, { base, cacheName, args = [] } = {}) {
|
||||
function registerWasmHTTPListener(wasm, { base, cacheName, passthroughFunc, args = [] } = {}) {
|
||||
let path = new URL(registration.scope).pathname
|
||||
if (base && base !== '') path = `${trimEnd(path, '/')}/${trimStart(base, '/')}`
|
||||
|
||||
@ -17,6 +17,10 @@ function registerWasmHTTPListener(wasm, { base, cacheName, args = [] } = {}) {
|
||||
WebAssembly.instantiateStreaming(source, go.importObject).then(({ instance }) => go.run(instance))
|
||||
|
||||
addEventListener('fetch', e => {
|
||||
if (passthroughFunc && passthroughFunc(e.request)) {
|
||||
e.respondWith(fetch(e.request))
|
||||
return;
|
||||
}
|
||||
const { pathname } = new URL(e.request.url)
|
||||
if (!pathname.startsWith(path)) return
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user