🍿 Minor Changes
-
#4876
d3091f89eThanks @matthewp! - Adds the Astro.cookies APIAstro.cookiesis a new API for manipulating cookies in Astro components and API routes.In Astro components, the new
Astro.cookiesobject is a map-like object that allows you to get, set, delete, and check for a cookie’s existence (has):---type Prefs = {darkMode: boolean;};Astro.cookies.set<Prefs>('prefs',{ darkMode: true },{expires: '1 month',});const prefs = Astro.cookies.get<Prefs>('prefs').json();---<body data-theme={prefs.darkMode ? 'dark' : 'light'}></body>Once you’ve set a cookie with Astro.cookies it will automatically be included in the outgoing response.
This API is also available with the same functionality in API routes:
export function post({ cookies }) {cookies.set('loggedIn', false);return new Response(null, {status: 302,headers: {Location: '/login',},});}See the RFC to learn more.