mirror of
https://github.com/Sevichecc/Urara-Blog.git
synced 2025-05-03 22:39:30 +08:00
1 line
No EOL
784 B
Text
1 line
No EOL
784 B
Text
async function e(e,t){let n="string"!=typeof t&&"HEAD"===t.method;n&&(t=new Request(t,{method:"GET"}));let a=await e.match(t);return n&&a&&(a=new Response(null,a)),a}function t(e,t,n,o){return("string"==typeof t||"GET"===t.method)&&a(n)&&(n.headers.has("Set-Cookie")&&(n=new Response(n.body,n)).headers.append("Cache-Control","private=Set-Cookie"),o.waitUntil(e.put(t,n.clone()))),n}var n=new Set([200,203,204,300,301,404,405,410,414,501]);function a(e){if(!n.has(e.status)||~(e.headers.get("Vary")||"").indexOf("*"))return!1;let t=e.headers.get("Cache-Control")||"";return!/(private|no-cache|no-store)/i.test(t)}function o(n){return async function(a,o){let r=await e(n,a);if(r)return r;o.defer((e=>{t(n,a,e,o)}))}}exports.isCacheable=a;exports.lookup=e;exports.save=t;exports.sync=o; |