# node: withGT URL: https://generaltranslation.com/fr/docs/node/api/with-gt.mdx --- title: withGT description: Référence de l’API du wrapper de requête withGT --- ## Vue d’ensemble La fonction `withGT` encapsule une fonction de rappel afin de fournir le contexte de paramètre régional aux fonctions de traduction. Sur un serveur Node.js, chaque requête correspond généralement à un utilisateur différent, avec un paramètre régional différent. `withGT` définit le paramètre régional pour toutes les fonctions de traduction appelées dans la fonction de rappel. ```js import { withGT } from 'gt-node'; app.get('/api/greeting', (req, res) => { withGT(req.locale, () => { // Les fonctions de traduction ici utilisent req.locale }); }); ``` **Contexte de la requête :** `withGT` utilise en interne l’async local storage pour associer le paramètre régional à la requête en cours. Tous les appels à `getGT` et `getMessages` dans la fonction de rappel utiliseront le paramètre régional fourni. ## Référence ### Paramètres T', optional: false, }, }} /> ### Description | Param | Description | | -------- | ------------------------------------------------------------------------------------------------------------------------------------- | | `locale` | Un [code de langue](/docs/core/locales) (par ex. `'es'`, `'fr-CA'`) à utiliser pour les traductions au sein de la fonction de rappel. | | `fn` | Une fonction de rappel à exécuter avec le contexte de paramètre régional spécifié. Peut être synchrone ou asynchrone. | ### Renvoie `T` — la valeur renvoyée par la fonction de rappel `fn`. *** ## Exemples ### Middleware pour Express ```js title="server.js" import express from 'express'; import { initializeGT, withGT, getGT } from 'gt-node'; initializeGT({ defaultLocale: 'en-US', locales: ['en-US', 'es', 'fr'], projectId: process.env.GT_PROJECT_ID, }); const app = express(); app.use((req, res, next) => { const locale = req.headers['accept-language']?.split(',')[0] || 'en-US'; withGT(locale, () => { next(); }); }); app.get('/api/greeting', async (req, res) => { const gt = await getGT(); res.json({ message: gt('Hello, world!') }); }); ``` ### Encapsuler un handler asynchrone ```js title="handler.js" import { withGT, getGT } from 'gt-node'; export async function handleRequest(locale: string) { return withGT(locale, async () => { const gt = await getGT(); return gt('Welcome to our app!'); }); } ``` *** ## Remarques * `initializeGT` doit être appelé avant toute utilisation de `withGT`. Sinon, une erreur sera levée. * Le contexte du paramètre régional est limité à la fonction de rappel et n'affecte pas les autres requêtes simultanées. * `withGT` fonctionne avec des fonctions de rappel synchrones comme asynchrones. ## Étapes suivantes * Consultez [`initializeGT`](/docs/node/api/initialize-gt) pour la configuration initiale. * Consultez [`getGT`](/docs/node/api/get-gt) pour traduire des chaînes dans le contexte d’une requête.