next.js/test/e2e/app-dir/use-cache-private/app/cookies/page.tsx
page.tsx32 lines777 B
import { cacheLife } from 'next/cache'
import { cookies } from 'next/headers'
import { Suspense } from 'react'

export default function Page() {
  return (
    <Suspense fallback={<p>Loading...</p>}>
      <Private />
    </Suspense>
  )
}

async function Private() {
  'use cache: private'

  cacheLife({ stale: 420 })
  const cookie = (await cookies()).get('test-cookie')

  const { headers } = await fetch(
    'https://next-data-api-endpoint.vercel.app/api/echo-headers',
    { headers: { 'x-test-cookie': cookie?.value ?? '' } }
  ).then((res) => res.json() as Promise<{ headers: Record<string, string> }>)

  const cookieHeader = headers['x-test-cookie']

  return (
    <pre>
      test-cookie: <span id="test-cookie">{cookieHeader || '<empty>'}</span>
    </pre>
  )
}
Quest for Codev2.0.0
/
SIGN IN