@ampproject/toolbox-update-cache

Implements the AMP update-cache API, as described at https://developers.google.com/amp/cache/update-cache

Usage no npm install needed!

<script type="module">
  import ampprojectToolboxUpdateCache from 'https://cdn.skypack.dev/@ampproject/toolbox-update-cache';
</script>

README

AMP-Toolbox update-cache

npm version

Generates AMP Cache invalidation URLs for all known AMP Caches. For more info see the Google AMP Cache documentation.

Usage

Install via:

npm install @ampproject/toolbox-update-cache

Generate a list of update URLs like this:

  const UpdateCacheUrlProvider = require('@ampproject/toolbox-update-cache');

  // Load the private key, generated as described on 
  // https://developers.google.com/amp/cache/update-cache#rsa-keys
  const privateKey = '...';

  // Create an instance of the factory using the private key.
  const updateCacheUrlProvider = UpdateCacheUrlProvider.create(privateKey);

  updateCacheUrlProvider.calculateFromOriginUrl('https://www.example.com')
    .then(cacheUpdateUrls => {
      cacheUpdateUrls.forEach(cacheUpdateUrlInfo => {
        console.log('Cache ID:' + cacheUpdateUrlInfo.cacheId);
        console.log('Cache Name:' + cacheUpdateUrlInfo.cacheName);
        console.log('cache-update URL:' + cacheUpdateUrlInfo.updateCacheUrl);
      });
    });

Note: this only generates the URLs, but doesn't perform the actual update request.