proxy.ts (ex-middleware.ts)
React 🟡 MidDéfinition
Depuis Next.js 16 (21 octobre 2025), le fichier middleware.ts est renommé proxy.ts et sa fonction exportée proxy ; il s'exécute par défaut sur Node.js. Il intercepte les requêtes avant le rendu pour rediriger, réécrire, poser des en-têtes ou cookies, filtré par un matcher. Le renommage vise à clarifier son rôle de frontière réseau et à décourager son usage pour de la logique métier.
Analogie
Le portier d'immeuble : il oriente et vérifie le badge à l'entrée, mais ne fait pas le travail des bureaux.
Exemple de code
// proxy.ts
import { NextResponse, type NextRequest } from 'next/server';
export function proxy(request: NextRequest) {
if (!request.cookies.has('session')) {
return NextResponse.redirect(new URL('/login', request.url));
}
return NextResponse.next();
}
export const config = {
matcher: ['/((?!api|_next/static|_next/image|favicon.ico).*)'],
};
// Codemod : npx @next/codemod@canary middleware-to-proxy .
Cas d'usage
Redirections de session, en-têtes CORS, A/B testing par cookie, réécritures d'URL legacy.
Anti-pattern
Oublier le matcher (le proxy tourne alors sur chaque asset) ou déléguer toute l'autorisation au proxy alors que les Server Functions doivent se protéger elles-mêmes.
Termes liés
Fiche mise à jour le 2026-09-27