@fastify/cookie

Parses request cookies and adds cookie helpers to the reply.

Since Fastify 5 Spec ↗

Syntax

app.register(cookie, { secret?, parseOptions? })

Parameters

NameTypeRequiredDescription
options object No Optional secret for signed cookies and default parseOptions.

Returns

Promise<void> — Resolves when the plugin is registered.

Examples

import Fastify from 'fastify';
import cookie from '@fastify/cookie';

const app = Fastify();
await app.register(cookie, { secret: process.env.COOKIE_SECRET });

app.get('/visit', async (req, reply) => {
  const count = Number(req.cookies.visits ?? 0) + 1;
  reply.setCookie('visits', String(count), {
    httpOnly: true,
    path: '/',
  });
  return { count };
});

Notes

Adds request.cookies, reply.setCookie(), reply.clearCookie(), and request.unsignCookie(). Provide a secret to enable signed cookies for tamper detection.