ブラウザーがプリロードを開始できるようにする事前のヘッダー。
使いどころ
ページの生成中に、CSS やフォント用の Link ヘッダーを送る場合。
知っておきたいこと
103 を使うと、サーバーは本来のレスポンスを生成している間に rel=preload や rel=preconnect 付きの Link ヘッダーを送れるため、ブラウザーはサーバーの処理時間中に CSS、フォント、スクリプトを取得できます。Chromium 系のブラウザーがこれに反応するのは HTTP/2 と HTTP/3 の場合だけで、しかもメインのナビゲーションに限られます。Firefox と Safari のサポートはさらに限定的です。古いクライアントや一部のプロキシは予期しない 1xx レスポンスを正しく扱えないので、導入前にテストしてください。
ヒントは、最終的にどのレスポンスになっても安全でなければなりません。ページが最終的にリダイレクトやエラーになれば、プリロードしたファイルは帯域幅の無駄になります。Cloudflare は、オリジンからの以前のレスポンスで見た Link ヘッダーをもとに、103 レスポンスを代わりに生成できます。結果は、最終ステータスの前に中間の 103 を表示する curl -v か、Early Hints によるリクエストがドキュメントの完了前に表示される DevTools で確認してください。
情報 (1xx)
1xx は情報レスポンスです。サーバーはリクエストを受け取っており、やり取りが続きます。ブラウザーや HTTP ライブラリが自動で処理します。
レスポンスでの表示
HTTP/1.1 103 Early Hints確認方法
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/