From f69e0a10c4bd1be92cac7c0c16f7f82010cbb232 Mon Sep 17 00:00:00 2001 From: Erik Date: Thu, 27 Nov 2025 16:35:12 -0300 Subject: [PATCH] fix: avoid caching project listings --- frontend/src/app/[locale]/page.tsx | 16 ++++++++++++---- frontend/src/app/[locale]/projetos/page.tsx | 16 ++++++++++++---- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/frontend/src/app/[locale]/page.tsx b/frontend/src/app/[locale]/page.tsx index fa91d47..b4b9cc7 100644 --- a/frontend/src/app/[locale]/page.tsx +++ b/frontend/src/app/[locale]/page.tsx @@ -112,12 +112,20 @@ export default function Home() { const fetchProjects = async () => { try { - const response = await fetch('/api/projects?status=published&take=3', { signal: controller.signal }); + const response = await fetch('/api/projects?status=published&take=3', { + method: 'GET', + cache: 'no-store', + credentials: 'same-origin', + signal: controller.signal, + }); + if (!response.ok) { - throw new Error('Falha ao buscar projetos mais recentes'); + throw new Error(`Falha ao buscar projetos mais recentes (status ${response.status})`); } - const data: PortfolioProject[] = await response.json(); - if (isMounted) { + + const data = await response.json(); + + if (isMounted && Array.isArray(data)) { setLatestProjects(data); } } catch (err) { diff --git a/frontend/src/app/[locale]/projetos/page.tsx b/frontend/src/app/[locale]/projetos/page.tsx index 517d02a..d742c63 100644 --- a/frontend/src/app/[locale]/projetos/page.tsx +++ b/frontend/src/app/[locale]/projetos/page.tsx @@ -31,12 +31,20 @@ export default function ProjetosPage() { const fetchProjects = async () => { try { - const response = await fetch('/api/projects?status=published', { signal: controller.signal }); + const response = await fetch('/api/projects?status=published', { + method: 'GET', + cache: 'no-store', + credentials: 'same-origin', + signal: controller.signal, + }); + if (!response.ok) { - throw new Error('Falha ao buscar projetos'); + throw new Error(`Falha ao buscar projetos (status ${response.status})`); } - const data: Project[] = await response.json(); - if (isMounted) { + + const data = await response.json(); + + if (isMounted && Array.isArray(data)) { setProjects(data); } } catch (err) {