# gt-node: General Translation Node.js SDK: Настройка gt-node
URL: https://generaltranslation.com/ru/docs/node/guides/configuring.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Как инициализировать General Translation gt-node с локалями, учетными данными и доставкой переводов.

`gt-node` полностью настраивается через вызов [`initializeGT`](/docs/node/reference/functions/initialize-gt), который выполняется один раз при запуске. В этом руководстве объясняется, какие значения нужно передать и как доставляются переводы.

*Примечание: в отличие от `gt-next`, `gt-node` не считывает `gt.config.json` автоматически — явно импортируйте этот файл, чтобы использовать его настройки локалей во время выполнения. Он использует `GT_PROJECT_ID`, `GT_API_KEY` и `GT_DEV_API_KEY` как резервные учетные данные.*

## Инициализация при запуске [#initialize]

Вызовите [`initializeGT`](/docs/node/reference/functions/initialize-gt) один раз — до обработки любых запросов, передав локали и учетные данные.

```ts title="server.js"
import { initializeGT } from 'gt-node';

initializeGT({
  defaultLocale: 'en',
  locales: ['en', 'es', 'fr'],
});
```

Чтобы значения оставались синхронизированы с CLI, импортируйте `gt.config.json` и передайте его поля в вызов с помощью spread-оператора.

## Добавьте учетные данные [#credentials]

Задайте project ID и API keys в окружении, где работает сервис. [`initializeGT`](/docs/node/reference/functions/initialize-gt) использует их, если вы не указываете соответствующие поля:

```bash
export GT_PROJECT_ID="your-project-id"
export GT_DEV_API_KEY="gtx-dev-..."
export GT_API_KEY="gtx-api-..."
```

Значения, переданные напрямую в [`initializeGT`](/docs/node/reference/functions/initialize-gt), имеют приоритет над переменными окружения. Если явно указано пустое значение, будет использовано значение из переменной окружения.

В режиме разработки project ID и API-ключ для разработки обеспечивают перевод по запросу и горячую перезагрузку, поэтому новые строки переводятся прямо по мере работы. В production переводы берутся из заранее сгенерированных файлов или CDN. Все параметры см. в [справочнике по конфигурации](/docs/node/reference/config).

## Выберите способ получения переводов [#delivery]

`gt-node` получает переводы в одном из следующих режимов:

* **CDN General Translation:** укажите `projectId` (без пользовательского загрузчика), чтобы получать переводы из CDN GT.
* **Локальные файлы:** передайте колбэк [`loadTranslations`](/docs/react/reference/functions/load-translations), который возвращает переводы для локали. См. [Локальное хранение переводов](/docs/node/guides/storing-translations).
* **Пользовательский эндпоинт:** задайте свой `cacheUrl`, чтобы загружать переводы с собственного хоста, или `null`, чтобы отключить удалённую загрузку.

## Обработка отсутствующих переводов [#missing]

Если перевод отсутствует, `gt-node` возвращает исходную строку с подставленными переменными вместо того, чтобы выбрасывать исключение, поэтому запрос всегда будет отрисован. Исключение — обращения к словарю через [`getTranslations`](/docs/node/reference/functions/get-translations): неизвестный id словаря вызывает исключение. Убедитесь, что значения [`initializeGT`](/docs/node/reference/functions/initialize-gt) соответствуют тому, что генерирует CLI, чтобы в Production переводы были готовы.

## Next steps

- /docs/node/guides/translating-strings
- /docs/node/guides/detecting-locale
- /docs/node/guides/storing-translations

## Sitemap

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