著者:
    作成:2026-01-30最終更新:2026-01-30

    intlayer AdonisJS ミドルウェアドキュメント

    AdonisJS 用の intlayer ミドルウェアは、ユーザーのロケールを検出し、リクエストコンテキストを通じて翻訳機能を提供します。また、リクエストフロー内でのグローバルな翻訳関数の使用を可能にします。

    使用方法

    start/kernel.ts
    router.use([() => import("adonis-intlayer/middleware")]);
    start/routes.ts
    import router from "@adonisjs/core/services/router";import { t } from "adonis-intlayer";router.get("/", async () => {  return t({    en: "Hello",    fr: "Bonjour",  });});

    説明

    ミドルウェアは以下のタスクを実行します:

    1. ロケール検出: リクエスト(ヘッダー、クッキーなど)を分析して、ユーザーの優先ロケールを決定します。
    2. コンテキスト設定: リクエストコンテキストにロケール情報を設定します。
    3. Async Local Storage: cls-hooked(または同等の仕組み)を使用して非同期コンテキストを管理し、tgetIntlayergetDictionary などのグローバルな Intlayer 関数が、手動で渡すことなくリクエスト固有のロケールにアクセスできるようにします。
    注: ロケール検出にクッキーを使用するには、@adonisjs/cookie が構成され、アプリケーションで使用されていることを確認してください。