リクエストIDミドルウェア
リクエストIDミドルウェアは、各リクエストに一意のIDを生成します。これはハンドラーで使用できます。
インポート
ts
import { Hono } from 'hono'
import { requestId } from 'hono/request-id'
使い方
リクエストIDミドルウェアが適用されたハンドラーとミドルウェアでは、requestId
変数を通じてリクエストIDにアクセスできます。
ts
const app = new Hono()
app.use('*', requestId())
app.get('/', (c) => {
return c.text(`Your request id is ${c.get('requestId')}`)
})
型を明示的に指定したい場合は、RequestIdVariables
をインポートし、new Hono()
のジェネリクスに渡してください。
ts
import type { RequestIdVariables } from 'hono/request-id'
const app = new Hono<{
Variables: RequestIdVariables
}>()
オプション
オプション limitLength: number
リクエストIDの最大長。デフォルトは255
です。
オプション headerName: string
リクエストIDに使用されるヘッダー名。デフォルトはX-Request-Id
です。
オプション generator: (c: Context) => string
リクエストID生成関数。デフォルトではcrypto.randomUUID()
を使用します。