Server Plugin
AutoHeadResponse
必要とされる依存関係: io.ktor:ktor-server-auto-head-response
コード例: autohead
Nativeサーバーのサポート: ✅ KtorはKotlin/Nativeをサポートしており、追加のランタイムや仮想マシンなしでサーバーを実行できます。
AutoHeadResponse プラグインは、GET
が定義されているすべてのルートに対して HEAD
リクエストに自動的に応答する機能を提供します。実際のコンテンツを取得する前にクライアント側でレスポンスを何らかの形で処理する必要がある場合、AutoHeadResponse
を使用して個別の head ハンドラーを作成する手間を省くことができます。例えば、respondFile 関数を呼び出すと、Content-Length
および Content-Type
ヘッダーがレスポンスに自動的に追加され、ファイルをダウンロードする前にクライアント側でこの情報を取得できます。
依存関係の追加
AutoHeadResponse
を使用するには、ビルドスクリプトに ktor-server-auto-head-response
アーティファクトを含める必要があります:
Kotlin
Groovy
XML
使用方法
この機能を利用するには、アプリケーションに AutoHeadResponse
プラグインをインストールする必要があります。
kotlin
import io.ktor.server.application.*
import io.ktor.server.plugins.autohead.*
import io.ktor.server.response.*
import io.ktor.server.routing.*
fun Application.main() {
install(AutoHeadResponse)
routing {
get("/home") {
call.respondText("This is a response to a GET, but HEAD also works")
}
}
}
この場合、/home
ルートにはこのHTTPメソッドの明示的な定義がなくても、HEAD
リクエストに応答するようになります。
このプラグインを使用している場合、同じ GET
ルートに対するカスタム HEAD
定義は無視されることに注意することが重要です。
オプション
AutoHeadResponse
には、追加の設定オプションはありません。