@drupflare/spool - v0.1.0
    Preparing search index...

    Function spoolProxy

    • A Fetch handler that sits in front of an origin that cannot load the library, such as PHP or a Drupal site with no module, and gives it local page views.

      /.spool/* and /spool-sw.js are answered here. Everything else goes to the origin with its method, headers and body, and redirects are passed through. A GET or HEAD without Authorization or a cookie outside publicCookies, answered 200 as text/html with no Set-Cookie, private or no-store, is decorated so the worker can keep it; anything else is forwarded untouched. The tags the origin sends in Cache-Tag, Surrogate-Key, X-Drupal-Cache-Tags or xkey become the page's dependencies, and a page with none depends on its own path.

      Limits: the proxy sees finished HTML, so an artifact is the whole page, the replica holds no records, and two pages never share a fragment. A page is invalidated by POST /.spool/purge, or when the proxy sees its body change, and it stays on a device until its route's maxStale runs out and the next sync reports the change. Freshness is therefore bounded by maxStale plus the time a purge takes to arrive. The memory of last-seen bodies lives in the instance: a restart forgets it, and each instance of a scaled-out proxy keeps its own.

      Parameters

      Returns SpoolProxy