Skip to content

Instantly share code, notes, and snippets.

@itacirgabral
Last active October 15, 2018 19:45
Show Gist options
  • Save itacirgabral/63e7df93a805f84e57eb103ddd8f8419 to your computer and use it in GitHub Desktop.
Save itacirgabral/63e7df93a805f84e57eb103ddd8f8419 to your computer and use it in GitHub Desktop.
let i = 0
self.addEventListener('install', console.dir)
// https://developer.mozilla.org/en-US/docs/Web/API/Clients/claim
self.addEventListener('activate', e => {
console.dir(e)
e.waitUntil(clients.claim())
})
// https://bugs.chromium.org/p/chromium/issues/detail?id=823392
self.addEventListener('fetch', e => {
console.log(`${i++}º trap`)
return e.respondWith(fetch(e.request))
})
self.addEventListener('sync', console.dir)
self.addEventListener('message', console.dir)
self.addEventListener('push', console.dir)
<!DOCTYPE html>
<html lang="pt-br">
<meta charset="utf-8">
<title>fetch trap</title>
<script>
navigator.serviceWorker.register("sw.js")
.then(console.dir)
.catch(console.error)
</script>
<body>
<textarea cols="40" rows="4">var ajax = new XMLHttpRequest()
ajax.open("GET","/trapping/fetch.json")
ajax.send()</textarea>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment