# General Translation React SDKs (gt-react, gt-next, gt-react-native): gtMiddleware
URL: https://generaltranslation.com/fr/docs/react/tanstack-start/reference/functions/gt-middleware.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Crée un état de paramètre régional propre à la requête pour les fonctions serveur TanStack Start. Référence API de gtMiddleware.

L’export `gtMiddleware` est le middleware global de requête de TanStack Start. Importez-le depuis `gt-tanstack-start` et enregistrez-le avant d’appeler des utilitaires runtime sur le serveur.

## Vue d’ensemble [#overview]

```ts title="src/start.ts"
import { createCsrfMiddleware, createStart } from '@tanstack/react-start';
import { gtMiddleware } from 'gt-tanstack-start';

const csrfMiddleware = createCsrfMiddleware({
  filter: ({ handlerType }) => handlerType === 'serverFn',
});

export const startInstance = createStart(() => ({
  requestMiddleware: [csrfMiddleware, gtMiddleware],
}));
```

## Fonctionnement [#how-it-works]

* Résout le paramètre régional, la région et le paramètre d’internationalisation à partir de la requête entrante et de votre configuration General Translation.
* Lorsque `localeRouting` est activé, donne la priorité au premier segment de chemin pris en charge plutôt qu’au cookie de paramètre régional et à l’en-tête `Accept-Language`. Le paramètre régional par défaut reste sans préfixe.
* Respecte le chemin de base de TanStack Router via `TSS_ROUTER_BASEPATH`.
* Stocke ces valeurs dans un état local à la requête pour le rendu côté serveur, les routes serveur et les fonctions serveur.
* Isole l’état de la requête pendant les requêtes serveur simultanées.
* Enregistre le paramètre régional résolu dans le cookie de paramètre régional de General Translation.

Appelez [`initializeGT`](/docs/react/reference/config#initialize) depuis `gt-tanstack-start` avant que le middleware ne traite une requête. Le middleware lève une exception si l’initialisation n’a pas créé son store des conditions.

## Utilitaires serveur [#server-helpers]

Le middleware fournit l’état de la requête aux éléments suivants :

* [`getLocale`](/docs/react/tanstack-start/reference/functions/get-locale)
* [`getEnableI18n`](/docs/react/tanstack-start/reference/functions/get-enable-i18n)
* [`getGT`](/docs/react/tanstack-start/reference/functions/get-gt)
* [`getMessages`](/docs/react/tanstack-start/reference/functions/get-messages)
* [`getTranslations`](/docs/react/tanstack-start/reference/functions/get-translations)

Ces utilitaires sont isomorphes. Leurs branches serveur génèrent une erreur lorsqu’elles sont appelées en dehors du contexte de requête actif du middleware ; leurs branches client lisent le store des conditions du navigateur initialisé par [`initializeGT`](/docs/react/reference/config#initialize).

## Historique des versions [#version-history]

| Version  | Modifications                                                                                                                                                              |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `11.1.5` | Exportation de `gtMiddleware` depuis la condition `browser` à la racine afin que les fichiers de setup puissent utiliser l’importation à la racine dans les builds client. |

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
