PerformanceResourceTiming: свойство serverTiming
Базовая линия 2023
Новое свойство
С марта 2023 года эта функция работает на последних устройствах и версиях браузеров. Возможно, эта функция не будет работать на старых устройствах или браузерах.
Примечание: Эта функция доступна в Web Workers.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Только для чтения свойство serverTiming возвращает массив записей PerformanceServerTiming, содержащих данные о времени работы сервера.
Для данных о времени работы сервера сервер должен отправить заголовок Server-Timing. Например:
Server-Timing: cache;desc="Cache Read";dur=23.2
Записи serverTiming могут существовать в записях navigation и resource.
Значение
Массив записей PerformanceServerTiming.
Примеры
Ведение журнала записей времени работы сервера
Вы можете использовать PerformanceObserver для отслеживания записей PerformanceServerTiming. Длительность каждой записи о времени работы сервера записывается в консоль.
Пример с использованием PerformanceObserver, который уведомляет о новых записях resource производительности, как они регистрируются на временной шкале производительности браузера. Используйте параметр buffered для доступа к записям, созданным до создания наблюдателя.
const observer = new PerformanceObserver((list) => {
list.getEntries().forEach((entry) => {
entry.serverTiming.forEach((serverEntry) => {
console.log(`${serverEntry.name} duration: ${serverEntry.duration}`);
});
});
});
["navigation", "resource"].forEach((type) =>
observer.observe({ type, buffered: true }),
);
Пример с использованием Performance.getEntriesByType(), который показывает только записи resource производительности, присутствующие на временной шкале производительности браузера в момент вызова этого метода:
for (const entryType of ["navigation", "resource"]) {
for (const { name: url, serverTiming } of performance.getEntriesByType(
entryType,
)) {
if (serverTiming) {
for (const { name, duration } of serverTiming) {
console.log(`${url}: ${name} duration: ${duration}`);
}
}
}
}
Информация о времени работы сервера с другим доменным именем
Доступ к информации о времени работы сервера ограничен тем же доменным именем. Чтобы предоставить доступ к информации о времени работы сервера с другим доменным именем, необходимо установить HTTP-заголовок Timing-Allow-Origin.
Например, чтобы разрешить https://developer.mozilla.org просматривать информацию о времени работы сервера, ресурс с другим доменным именем должен отправлять:
Timing-Allow-Origin: https://developer.mozilla.org
Спецификации
| Спецификация |
|---|
| Временная шкала сервера # servertiming-attribute |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
serverTiming |
65 | 79 | 61 | 52 | 16.4 | 65 | 61 | 47 | 16.4 | 9.0 | 65 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/serverTiming