プリセット
Hono には、特定の目的に合わせて設計された複数のルーターがあります。 Hono のコンストラクターで使用するルーターを指定できます。
一般的な用途に合わせたプリセットが用意されているため、毎回ルーターを指定する必要はありません。 各プリセットからインポートする Hono クラスは同じで、違いはルーターだけです。そのため、相互に置き換えて使用できます。
hono
使い方:
ts
import { Hono } from 'hono'ルーター:
ts
this.router = new SmartRouter({
routers: [new RegExpRouter(), new TrieRouter()],
})hono/quick
使い方:
ts
import { Hono } from 'hono/quick'ルーター:
ts
this.router = new SmartRouter({
routers: [new LinearRouter(), new TrieRouter()],
})hono/tiny
使い方:
ts
import { Hono } from 'hono/tiny'ルーター:
ts
this.router = new PatternRouter()どのプリセットを使えばよいですか?
| プリセット | 適したプラットフォーム |
|---|---|
hono | ほとんどの用途で強く推奨するプリセットです。登録フェーズは hono/quick より遅い場合がありますが、起動後は高い性能を発揮します。Deno、Bun、Node.js で構築する長時間稼働のサーバーに適しています。Fastly Compute でも、アプリケーションのビルド時にルートを登録するため適しています。V8 isolate を使う Cloudflare Workers や Deno Deploy でも、起動後に isolate が一定時間存続するため、このプリセットが適しています。 |
hono/quick | リクエストごとにアプリケーションが初期化される環境向けのプリセットです。 |
hono/tiny | 最も小さいルーターパッケージで、リソースが限られた環境に適しています。 |