Skip to content
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 には、追加の設定オプションはありません。