Use `force-cache` for public/static data that can be reused, and `no-store` for request-specific or highly fresh data: ```ts fetch(url, { cache: 'force-cache' }) fetch(url, { cache: 'no-store' }) ``` For periodic freshness, use `next: { revalidate: 60 }`; for targeted mutations, use tags and `revalidateTag`. Do not put user-specific responses in a shared cache, and verify behavior after mutations instead of relying on cache assumptions.
Installs into .claude/skills of the current project.
Are you the author of Nextjs Data Fetching?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/hoangnguyen0403-nextjs-data-fetching-43b67669)
Use `force-cache` for public/static data that can be reused, and `no-store` for request-specific or highly fresh data:
```ts
fetch(url, { cache: 'force-cache' })
fetch(url, { cache: 'no-store' })
```
For periodic freshness, use `next: { revalidate: 60 }`; for targeted mutations, use tags and `revalidateTag`. Do not put user-specific responses in a shared cache, and verify behavior after mutations instead of relying on cache assumptions.