# General Translation React SDKs (gt-react, gt-next, gt-react-native): gtMiddleware URL: https://generaltranslation.com/ja/docs/react/tanstack-start/reference/functions/gt-middleware.mdx --- title: gtMiddleware description: TanStack Start で General Translation のサーバー API 用に、リクエストスコープのロケール状態を作成します。gtMiddleware の API リファレンス。 --- `gtMiddleware` エクスポートは、TanStack Start 全体で使用するグローバルなリクエスト ミドルウェアです。`gt-tanstack-start/server` からインポートし、リクエストスコープのサーバー ヘルパーを呼び出す前に登録してください。 ## 概要 [#overview] ```ts title="src/start.ts" import { createCsrfMiddleware, createStart } from '@tanstack/react-start'; import { gtMiddleware } from 'gt-tanstack-start/server'; const csrfMiddleware = createCsrfMiddleware({ filter: ({ handlerType }) => handlerType === 'serverFn', }); export const startInstance = createStart(() => ({ requestMiddleware: [csrfMiddleware, gtMiddleware], })); ``` ## 仕組み [#how-it-works] * 受信したリクエストと General Translation の設定に基づいて、ロケール、リージョン、国際化設定を解決します。 * これらの値を、サーバーサイドレンダリング、サーバールート、サーバー関数用のリクエストローカルな状態に保存します。 * 同時に処理されるサーバーリクエスト間でも、リクエスト状態を分離したまま保ちます。 * 解決されたロケールを General Translation のロケール cookie に保持します。 ミドルウェアがリクエストを処理する前に、`gt-tanstack-start` の [`initializeGT`](/docs/react/reference/config#initialize) を呼び出します。初期化によって condition store が作成されていない場合、ミドルウェアは例外をスローします。 ## サーバーヘルパー [#server-helpers] ミドルウェアは、以下にリクエスト状態を提供します: * [`getLocale`](/docs/react/tanstack-start/reference/functions/get-locale) * [`getEnableI18n`](/docs/react/tanstack-start/reference/functions/get-enable-i18n) * [`getGT`](/docs/react/tanstack-start/reference/functions/get-gt) * [`getMessages`](/docs/react/tanstack-start/reference/functions/get-messages) * [`getTranslations`](/docs/react/tanstack-start/reference/functions/get-translations) これらのヘルパーは、有効なミドルウェアのリクエストスコープ外で呼び出されると例外をスローします。