Автор:
    Создание:2026-09-19Последнее обновление:2026-09-19

    Промежуточное ПО intlayer

    Функция промежуточного ПО intlayer настраивает интернационализацию запросов в приложениях Remix 3. Она определяет локаль каждого входящего запроса, применяет правила перенаправления URL и сохраняет состояние локали в контексте запроса.

    Использование

    Зарегистрируйте промежуточное ПО в вашем маршрутизаторе Remix:

    src/server.ts
    import { createRouter } from "remix/router";
    import { intlayer } from "remix-intlayer";
    
    export const router = createRouter({
      middleware: [intlayer()],
    });
    

    Как это работает

    Промежуточное ПО выполняет несколько задач для каждого входящего запроса:

    1. Определение локали: Извлекает локаль из префикса URL-пути (например, /fr/about), файлов cookie или заголовка Accept-Language в соответствии с вашей конфигурацией Intlayer.
    2. Перенаправление URL: Если запрошенный путь не содержит префикса локали, а конфигурация требует префиксации маршрутов, промежуточное ПО возвращает ответ-перенаправление (302/307/308) на соответствующий URL с префиксом.
    3. Заполнение контекста запроса: Сохраняет текущую разрешенную локаль в контексте запроса Remix с использованием ключа Intlayer, что позволяет хукам (useLocale, useIntlayer, useDictionary) прозрачно использовать ее.
    4. Управление куками: Сохраняет заголовок Set-Cookie при необходимости запомнить предпочтительную локаль пользователя.

    Связанная документация