const cache = cache.default;
const cacheKey = generateCacheKey(request);
const cacheData = await cache.match(cacheKey);
if (cacheData != null) {
return cacheData;
}
const beresp = await fetch("https://example.com", { headers: { "X-TEST": req.headers.get("X-TEST") }});
const data = await beresp.json();
const responseBody = JSON.stringify(data);
const res = new Response(responseBody, {
status: beresp.status,
headers: { "content-type": "application/json" }
});
res.headers.set("cache-control", "public, s-maxage=60");
res.headers.set("vary", "X-TEST");
ctx.waitUntil(cache.put(cacheKey, res.clone()));
return res;
const cache = cache.default;
const cacheKey = generateCacheKey(request);
const cacheData = await cache.match(cacheKey);
if (cacheData != null) {
return cacheData;
}
const beresp = await fetch("https://example.com", { headers: { "X-TEST": req.headers.get("X-TEST") }});
const data = await beresp.json();
const responseBody = JSON.stringify(data);
const res = new Response(responseBody, {
status: beresp.status,
headers: { "content-type": "application/json" }
});
res.headers.set("cache-control", "public, s-maxage=60");
res.headers.set("vary", "X-TEST");
ctx.waitUntil(cache.put(cacheKey, res.clone()));
return res;