Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
リソースタイミングはパフォーマンス API の一部であり、アプリケーションのリソースを読み込む際のネットワークタイミングの詳細データの取得と分析を可能にします。アプリケーションはタイミング指標を使用することで、例えば、fetch() API を使用するなどして、JavaScript から明示的に、またはページ読み込みの一部として暗黙的に、特定のリソース(画像やスクリプトなど)を読み込むのにかかる時間を特定することができます。
文書上のすべてのリソースは、PerformanceResourceTiming(PerformanceEntry インターフェイスを拡張したもの)の項目のうち、entryType が "resource" であるもので表されます。
それぞれの PerformanceResourceTiming 項目には、リソース読み込みのタイムラインが記録され、リダイレクトの開始と終了時間、DNS ルックアップの開始と終了時間、リクエストの開始、応答の開始と終了時間など、ネットワークイベントの高解像度タイムスタンプが記載されます。タイムスタンプの他にも、リソースに関する情報が指定されたプロパティが記載されます。例えば、取得したリソースのサイズや、フェッチを開始したリソースの種類などです。
図 1 リソース読み込みタイムスタンプ(引用元)
アプリケーションは、リソースを読み込む際に使用するさまざまな段階のタイムスタンプを取得することができます。この API が提供するタイムスタンプは以下の通りです。
PerformanceResourceTiming インターフェイスには、リソースのサイズデータを取得するために使用できる 3 つのプロパティがあります。transferSize プロパティは、取得したリソースのサイズをバイト単位で返します。このサイズには、レスポンスヘッダーフィールドに加え、レスポンス内容本体も含みます。
encodedBodySize プロパティは、適用されたコンテンツエンコーディングが除去される前の、HTTP またはキャッシュから取得した内容本体のサイズをオクテット単位で返します。decodedBodySize は、適用されたコンテンツエンコーディングが除去された後の、HTTP またはキャッシュから取得したメッセージ本体のサイズをオクテット単位で返します。
PerformanceResourceTiming インターフェイスは、追加のリソース情報を提供します。プロパティの全リストについては、リファレンスドキュメントを参照してください。
PerformanceResourceTiming 項目が提供する情報は、以下のような計算によく使用されます。
PerformanceResourceTiming のリファレンスページには、これらすべての指標を測定するためのサンプルコードが格納されています。 通常、これらの指標を測定するためのコードは、例えば以下のようなものです。
CORS が有効な場合、サーバーのアクセスポリシーがこれらの値の共有を許可しない限り、タイミングプロパティの値の多くはゼロとして返されます。このため、リソースを指定されたサーバーは、制限付きのタイムスタンプ値を取得することが許可されたオリジンの値を指定した、HTTP の Timing-Allow-Origin レスポンスヘッダーを送信する必要があります。
ウェブページ自体のオリジン以外からリソースを読み込む際に、既定では 0 を返すプロパティとあしては、redirectStart、redirectEnd、domainLookupStart、domainLookupEnd、connectStart、connectEnd、secureConnectionStart、requestStart、responseStart があります。
例えば、https://developer.mozilla.org がリソースのタイミング情報を確認できるようにするには、オリジン間リソースが送信する必要があります。
ウェブサイトまたはアプリケーションで 250 以上のリソースを取得し、250 以上の PerformanceResourceTiming 項目を記録したい場合は、リソースタイミングバッファーのサイズを大きくする必要があります。
ブラウザーのパフォーマンスリソースデータバッファーのサイズを設定するには、Performance.setResourceTimingBufferSize() メソッドを使用し、ブラウザーのパフォーマンスリソースデータバッファーをクリアするには、Performance.clearResourceTimings() メソッドを使用します。
ブラウザーのリソースタイミングバッファーが満杯になったことを通知してもらうには、 resourcetimingbufferfull イベントを待ち受けしてください。
次の呼び出しでは、ブラウザーのパフォーマンスタイムラインに 500 件の "resource" パフォーマンス項目が追加されます。
詳しくは、バッファーサイズの管理も参照してください。
This page was last modified on 2026年4月12日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.