# gt-node: General Translation Node.js SDK: initializeGT
URL: https://generaltranslation.com/ru/docs/node/reference/functions/initialize-gt.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Настройте библиотеку General Translation gt-node один раз при запуске сервера. Справка по API для initializeGT.

Настраивает General Translation для использования в среде выполнения Node.js. Вызовите `initializeGT` один раз — до вызова любых других функций перевода, — чтобы настроить локали, учетные данные и доставку переводов.

## Обзор [#overview]

Вызовите `initializeGT` в начале файла точки входа вашего сервера. Эта функция считывает резервные учетные данные из `GT_PROJECT_ID`, `GT_API_KEY` и `GT_DEV_API_KEY`, но не считывает `gt.config.json` автоматически. Полный список параметров см. в [справочнике по конфигурации](/docs/node/reference/config).

```ts
import { initializeGT } from 'gt-node';

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

Сигнатура:

```ts
initializeGT(config: InitializeGTParams): void
```

*Примечание: `initializeGT` необходимо вызвать до использования [`withGT`](/docs/node/reference/functions/with-gt), [`getGT`](/docs/node/reference/functions/get-gt), [`getMessages`](/docs/node/reference/functions/get-messages) или любой другой функции перевода. Если вызвать эти функции раньше, будет выброшена ошибка.*

## Как это работает [#how-it-works]

* **Однократная настройка.** Вызовите `initializeGT` ровно один раз при инициализации сервера. Он настраивает конфигурацию локалей, кэш переводов и хранилище локали для каждого запроса.
* **Приоритет учетных данных.** Явно заданные непустые значения `projectId`, `apiKey` и `devApiKey` имеют приоритет. Пропущенные или пустые значения заменяются соответствующими переменными окружения.
* **Режим доставки.** Укажите `projectId`, чтобы загружать переводы из CDN General Translation, или [`loadTranslations`](/docs/react/reference/functions/load-translations), чтобы использовать собственный source. Для перевода по запросу в процессе разработки также укажите `devApiKey`.
* **Синхронно.** Вызов возвращается сразу и не ожидает завершения сетевых запросов.

## Параметры [#parameters]

| Параметр            | Описание                                                                            | Тип                  | Необязательный | По умолчанию |
| ------------------- | ----------------------------------------------------------------------------------- | -------------------- | -------------- | ------------ |
| [`config`](#config) | Объект конфигурации. См. [справочник по конфигурации](/docs/node/reference/config). | `InitializeGTParams` | Нет            | —            |

### `config` [#config]

**Тип** `InitializeGTParams` · **Обязательно**

Объект, объединяющий параметры локали, учетных данных, кэша и словаря. Сам объект обязателен, но все его поля необязательны. Каждое поле описано в [справочнике по конфигурации](/docs/node/reference/config). Часто используемые поля:

* `defaultLocale` — исходная и резервная локаль (по умолчанию `'en'`).
* `locales` — поддерживаемые целевые локали.
* `projectId` — ID проекта; при указании включает CDN-загрузчик.
* `apiKey` — API-ключ для production.
* `devApiKey` — API-ключ для разработки для перевода по запросу.
* `loadTranslations` — пользовательский загрузчик, возвращающий переводы для локали.
* `customMapping` — алиасы локалей и переопределения свойств.

## Возвращает [#returns]

**Тип** `void`

## Примеры [#examples]

```ts title="server.js"
// Базовая настройка
import { initializeGT } from 'gt-node';

initializeGT({
  defaultLocale: 'en',
  locales: ['en', 'es', 'fr', 'ja'],
  // Учётные данные считываются из GT_PROJECT_ID, GT_API_KEY и GT_DEV_API_KEY.
});
```

```ts title="server.js"
// С пользовательским загрузчиком переводов
import { initializeGT } from 'gt-node';

initializeGT({
  defaultLocale: 'en',
  locales: ['en', 'es'],
  loadTranslations: async (locale) => {
    const res = await fetch(`https://my-api.com/translations/${locale}`);
    return res.json();
  },
});
```

## История версий [#version-history]

| Версия          | Изменения                                                                                                                                                                |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `gt-node` 1.0.8 | Добавлены резервные значения переменных окружения `GT_PROJECT_ID`, `GT_API_KEY` и `GT_DEV_API_KEY`. Однако явно заданные непустые параметры по-прежнему имеют приоритет. |

## Sitemap

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