# node: withGT
URL: https://generaltranslation.com/es/docs/node/api/with-gt.mdx
---
title: withGT
description: Referencia de la API del envoltorio de solicitudes withGT
---
## Resumen
La función `withGT` envuelve un callback para proporcionar contexto de configuración regional a las funciones de traducción.
En un servidor Node.js, cada solicitud suele atender a un usuario distinto con una configuración regional diferente.
`withGT` establece la configuración regional para todas las funciones de traducción que se llaman dentro del callback.
```js
import { withGT } from 'gt-node';
app.get('/api/greeting', (req, res) => {
withGT(req.locale, () => {
// Las funciones de traducción dentro de aquí usan req.locale
});
});
```
**Contexto de la solicitud:**
`withGT` usa almacenamiento local asíncrono internamente para aplicar la configuración regional a la solicitud actual.
Todas las llamadas a `getGT` y `getMessages` dentro del callback usarán la configuración regional proporcionada.
## Referencia
### Parámetros
T',
optional: false,
},
}}
/>
### Descripción
| Param | Descripción |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `locale` | Un [código de configuración regional](/docs/core/locales) (p. ej., `'es'`, `'fr-CA'`) que se usará para las traducciones dentro del callback. |
| `fn` | Una función callback que se ejecuta con el contexto de configuración regional especificada. Puede ser sincrónica o asincrónica. |
### Devuelve
`T` — valor devuelto por la función callback `fn`.
***
## Ejemplos
### Middleware de 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!') });
});
```
### Envolver un handler asíncrono
```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!');
});
}
```
***
## Notas
* Se debe llamar a `initializeGT` antes de usar `withGT`. De lo contrario, se producirá un error.
* El contexto de configuración regional se limita al callback y no se propaga a otras solicitudes concurrentes.
* `withGT` funciona tanto con callbacks sincrónicos como asincrónicos.
## Próximos pasos
* Consultar [`initializeGT`](/docs/node/api/initialize-gt) para la configuración inicial.
* Consultar [`getGT`](/docs/node/api/get-gt) para traducir cadenas en el contexto de una solicitud.