Skip to content

Commit ae52627

Browse files
authored
Merge pull request #240 from sametcodes/239-implementing-caching-on-the-view-api
feat(#239): implemented back cache control
2 parents 7e461f1 + ba7e946 commit ae52627

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

middlewares/api/cache.ts

+9-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,16 @@ export const setCacheControl = (
99
query: { cache_time, _vercel_no_cache },
1010
} = res.locals;
1111

12-
res.setHeader("Cache-Control", "max-age=60");
12+
res.setHeader("Cache-Control", "max-age=60, stale-while-revalidate=2592000");
1313
if (_vercel_no_cache === undefined) {
14-
res.setHeader("CDN-Cache-Control", `max-age=${cache_time}`);
15-
res.setHeader("Vercel-CDN-Cache-Control", `max-age=${cache_time}`);
14+
res.setHeader(
15+
"CDN-Cache-Control",
16+
`max-age=${cache_time}, stale-while-revalidate=2592000`
17+
);
18+
res.setHeader(
19+
"Vercel-CDN-Cache-Control",
20+
`max-age=${cache_time}, stale-while-revalidate=2592000`
21+
);
1622
}
1723

1824
next();

pages/api/view/[id].ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {
99
} from "@/middlewares/api/private";
1010
import { validateAccessToken, loadPassport } from "@/middlewares/api/auth";
1111
import { resolveHandler } from "@/middlewares/api";
12-
// import { setCacheControl } from "@/middlewares/api/cache";
12+
import { setCacheControl } from "@/middlewares/api/cache";
1313
import { NextApiRequest, NextApiResponse } from "next";
1414

1515
export default nextConnect()
@@ -19,7 +19,7 @@ export default nextConnect()
1919
.use(resolveHandler)
2020
.use(loadPassport)
2121
.use(validateAccessToken)
22-
// .use(setCacheControl)
22+
.use(setCacheControl)
2323
.get((req: NextApiRequest, res: NextApiResponse) => {
2424
const { services, templates, connection, query, config } = res.locals;
2525
return handlePlatformAPI(

0 commit comments

Comments
 (0)