diff --git a/src/routes/api/articles/+server.ts b/src/routes/api/articles/+server.ts
index d5dcdee..6323b82 100644
--- a/src/routes/api/articles/+server.ts
+++ b/src/routes/api/articles/+server.ts
@@ -2,25 +2,13 @@ import { json } from '@sveltejs/kit';
import type { RequestHandler, RequestEvent } from './$types';
import { fetchArticlesApi } from '$root/routes/api';
-export const GET: RequestHandler = async ({ url, setHeaders }: RequestEvent) => {
+export const GET: RequestHandler = async ({ url }: RequestEvent) => {
try {
const response = await fetchArticlesApi('get', `fetchArticles`, {
page: url?.searchParams?.get('page') || '1'
});
if (response?.articles) {
- if (response?.cacheControl) {
- if (!response.cacheControl.includes('no-cache')) {
- setHeaders({
- 'cache-control': response?.cacheControl
- });
- } else {
- setHeaders({
- 'cache-control': 'max-age=43200'
- });
- }
- }
-
return json(response);
}
} catch (error) {
diff --git a/src/routes/articles/[page]/+page.server.ts b/src/routes/articles/[page]/+page.server.ts
index 2440a62..76df7eb 100644
--- a/src/routes/articles/[page]/+page.server.ts
+++ b/src/routes/articles/[page]/+page.server.ts
@@ -7,13 +7,24 @@ export type ArticlePageLoad = {
totalPages: number;
limit: number;
totalArticles: number;
+ cacheControl: string;
};
-export const load: PageServerLoad = async ({ fetch, params }) => {
+export const load: PageServerLoad = async ({ fetch, params, setHeaders }) => {
const { page } = params;
const resp = await fetch(`/api/articles?page=${page}`);
- const { articles, currentPage, totalPages, limit, totalArticles }: ArticlePageLoad =
+ const { articles, currentPage, totalPages, limit, totalArticles, cacheControl }: ArticlePageLoad =
await resp.json();
+
+ if (cacheControl?.includes('no-cache')) {
+ setHeaders({
+ 'cache-control': cacheControl
+ });
+ } else {
+ setHeaders({
+ 'cache-control': 'max-age=43200' // 12 hours
+ });
+ }
return {
articles,
currentPage,
diff --git a/src/routes/articles/[page]/+page.svelte b/src/routes/articles/[page]/+page.svelte
index 2d6d014..8437e4d 100644
--- a/src/routes/articles/[page]/+page.svelte
+++ b/src/routes/articles/[page]/+page.svelte
@@ -11,9 +11,13 @@
let totalArticles: number;
let limit: number;
$: ({ articles, currentPage, totalPages, totalArticles, limit } = data);
+ $: seoTitle = `Tech Articles - Page ${currentPage} | Bradley Shellnut`;
-