Middleware

createNextMiddleware

Référence de l’API de la méthode createNextMiddleware().

Vue d’ensemble

createNextMiddleware est une fonction utilitaire qui génère un middleware à utiliser avec Next.js. Elle permet d’ajouter une route distincte pour chaque locale dans votre application Next.js.

Par exemple, un utilisateur francophone sera dirigé vers /fr/landing, et un utilisateur anglophone vers /en/landing.

Pour en savoir plus sur l’utilisation de ce middleware, consultez le guide de routage i18n.

Références

Props

Prop

Type

Description

PropDescription
pathConfigUn objet imbriqué qui définit les chemins localisés de votre application.
localeRoutingIndicateur permettant d’activer ou de désactiver le routage i18n.
prefixDefaultLocaleIndicateur permettant d’activer ou de désactiver la suppression du préfixe de locale pour le defaultLocale (p. ex. /en/about/about).

Exemple

Utilisation de base

Il suffit d’appeler cette fonction et d’ajouter le sélecteur de chemin à votre fichier de middleware pour activer le routage par locale.

middleware.js
import { createNextMiddleware } from 'gt-next/middleware'

export default createNextMiddleware();

export const config = {
  matcher: [
    /*
      * Correspond à tous les chemins de requête sauf ceux commençant par :
      * - api (routes d'API)
      * - _next (fichiers internes)
      * - fichiers statiques
      */
    "/((?!api|static|.*\\..*|_next).*)",
  ],
}

Chemins localisés

Vous pouvez définir des chemins localisés à l’aide de l’option pathConfig dans le fichier middleware.

middleware.js
export default createNextMiddleware({
  pathConfig: {
    "/about": "/about",
    "/airplanes": {
      "zh": "/飞机",
    }
  },
});

Consultez le guide de routage i18n pour une explication détaillée du fonctionnement de ce mécanisme.

Supprimer le préfixe du defaultLocale

Vous pouvez supprimer le préfixe du defaultLocale en définissant l’option prefixDefaultLocale sur false.

middleware.js
export default createNextMiddleware({
  prefixDefaultLocale: true,
});

Lorsque cette valeur est à true, chaque chemin doit être préfixé par la locale. Si vous la définissez sur false (valeur par défaut), seule la locale par défaut sera supprimée du chemin.


Notes

  • La fonction createNextMiddleware est un utilitaire qui crée une fonction de middleware à utiliser avec Next.js.

Prochaines étapes

Comment trouvez-vous ce guide ?