🌿 Nuxt.js Intermediate

What are Nuxt.js server middleware vs route middleware?

Answer

These are two distinct types of middleware serving different purposes. Route middleware (in middleware/) runs on the Vue Router level — it executes during client-side navigation and SSR page rendering, has access to the to/from route objects, and is used for auth guards, redirects, and route-level logic. Server middleware (in server/middleware/) runs on the Nitro HTTP server level for every incoming request — before routing — and has access to the raw HTTP event. Use server middleware for CORS headers, request logging, rate limiting, and API request processing. Server middleware never runs on the client; route middleware can run on both server and client.