# gt-node: General Translation Node.js SDK: Настройка gt-node URL: https://generaltranslation.com/ru/docs/node/guides/configuring.mdx --- title: Настройка gt-node description: "Как инициализировать General Translation gt-node: в этом руководстве рассматриваются локали, учетные данные и доставка переводов." related: links: - /docs/node/guides/translating-strings - /docs/node/guides/detecting-locale - /docs/node/guides/storing-translations --- `gt-node` полностью настраивается через вызов [`initializeGT`](/docs/node/reference/functions/initialize-gt), который выполняется один раз при запуске. В этом руководстве объясняется, какие значения нужно передать и как доставляются переводы. *Примечание: в отличие от `gt-next`, `gt-node` не считывает `gt.config.json` и переменные окружения автоматически. Все значения нужно передавать явно.* ## Инициализация при запуске [#initialize] Вызовите `initializeGT` один раз — до обработки любых запросов, передав локали и учетные данные. ```ts title="server.js" import { initializeGT } from 'gt-node'; initializeGT({ defaultLocale: 'en', locales: ['en', 'es', 'fr'], projectId: process.env.GT_PROJECT_ID, }); ``` Чтобы значения оставались синхронизированы с CLI, импортируйте `gt.config.json` и передайте его поля в вызов с помощью spread-оператора. ## Добавьте учетные данные [#credentials] Задайте Project ID и API Key как переменные окружения и передайте их. Во время разработки используйте ключ для development, а в production — ключ для production. ```ts title="server.js" initializeGT({ defaultLocale: 'en', locales: ['en', 'es', 'fr'], projectId: process.env.GT_PROJECT_ID, devApiKey: process.env.NODE_ENV !== 'production' ? process.env.GT_API_KEY : undefined, apiKey: process.env.NODE_ENV === 'production' ? process.env.GT_API_KEY : undefined, }); ``` В режиме разработки `projectId` и 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` соответствуют тому, что генерирует CLI, чтобы в Production переводы были готовы. ## Next steps - /docs/node/guides/translating-strings - /docs/node/guides/detecting-locale - /docs/node/guides/storing-translations