Создание:2026-01-29Последнее обновление:2026-01-29

    Документация промежуточного ПО intlayer для Hono

    Промежуточное ПО intlayer для Hono определяет локаль пользователя и заполняет объект контекста функциями Intlayer. Оно также позволяет использовать глобальные функции перевода в контексте запроса.

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

    import { Hono } from "hono";
    import { intlayer } from "hono-intlayer";
    
    const app = new Hono();
    
    app.use("*", intlayer());
    
    app.get("/", async (c) => {
      const t = c.get("t");
      const content = t({
        en: "Hello",
        fr: "Bonjour",
        ru: "Привет",
      });
    
      return c.text(content);
    });

    Описание

    Промежуточное ПО выполняет следующие задачи:

    1. Определение локали: анализирует запрос (заголовки, cookies и т. д.) для определения предпочтительной локали пользователя.
    2. Заполнение контекста: добавляет данные Intlayer в контекст Hono, доступный через c.get(). Сюда входят:
      • locale: определенная локаль.
      • t: функция перевода.
      • getIntlayer: функция для получения словарей.
      • getDictionary: функция для обработки объектов словаря.
    3. Управление контекстом: использует cls-hooked для управления асинхронным контекстом, позволяя глобальным функциям Intlayer (t, getIntlayer, getDictionary) получать доступ к локали, специфичной для запроса, без передачи объекта контекста.