1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18

content / test / data / service_worker / fenced_frame_service_worker.js [blame]

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

self.addEventListener('install', e => e.waitUntil(skipWaiting()));
self.addEventListener('activate', e => e.waitUntil(clients.claim()));

self.addEventListener('message', async e => {
  const {type, id, resource, options} = e.data;
  if (type === 'fetch') {
    try {
      await self.registration.backgroundFetch.fetch(id, resource, options);
      e.source.postMessage('fetch succeeded.');
    } catch (error) {
      e.source.postMessage(error.message);
    }
  }
});