
cache: 'no-store' in your fetch. by default, nextjs tries to cache fetch requests@cloudflare/next-on-pages generates a worker that would handle incoming requests to your app, and properly route requests to dynamic routes._redirects wouldn't work because the worker takes priority over the redirects in that filenext-dev package). Turns out I was calling a server action from a page where I forgot to set the runtime to "edge"...export const runtime = 'edge' // 'nodejs' (default) | 'edge' inside of my app/layout.tsx file so everything is edge (unless I've misunderstood the issue you are facing)
cache: 'no-store'@cloudflare/next-on-pagesname: Deploy Production
on:
push:
branches:
- master
jobs:
deploy:
runs-on: pages-build
name: Deploy
steps:
- uses: actions/checkout@v3
- name: Build
shell: bash
run: npm ci && npm run pages:build
env:
NODE_OPTIONS: ${{ vars.NODE_OPTIONS }}
- name: Deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
command: pages deploy .vercel/output/static --project-name=PROJECT_NAME_HEREnext-devexport const runtime = 'edge' // 'nodejs' (default) | 'edge'app/layout.tsximport { FunctionComponent } from "react";
import AgendaAdminPage from "./AgendaAdminPage";
import { Package } from "@/types/package";
import { Calendar } from "@/types/calendar";
const Agenda: FunctionComponent = async () => {
const dates = (await fetch(process.env.NEXT_PUBLIC_HOST + "/api/agenda", {
headers: {
"CF-Access-Client-Id": process.env.CF_ACCESS_CLIENT_ID,
"CF-Access-Client-Secret": process.env.CF_ACCESS_CLIENT_SECRET,
} as HeadersInit,
})
.then((res) => res.json())
.catch((err) => console.log(err))) as Calendar[];
console.log(dates);
const packages = (await fetch(process.env.NEXT_PUBLIC_HOST + "/api/package", {
headers: {
"CF-Access-Client-Id": process.env.CF_ACCESS_CLIENT_ID,
"CF-Access-Client-Secret": process.env.CF_ACCESS_CLIENT_SECRET,
} as HeadersInit,
})
.then((res) => res.json())
.catch((err) => console.log(err))) as Package[];
console.log(packages);
return <AgendaAdminPage dates={dates} packages={packages} />;
};
export default Agenda;