Chrome Javascript:如何从浏览器获得准确的资源定时API条目

14ifxucb  于 2022-12-30  发布在  Go
关注(0)|答案(1)|浏览(158)
    • bounty将在5天后过期**。回答此问题可获得+100的声誉奖励。Tushar Shahi正在寻找规范答案

使用PerformanceResourceTiming时,返回的duration值也包括资源调度时间。
下面是一个例子:
以下是使用性能观察器观察到的数据:

这些值与网络面板相匹配。但是这个值对应于总时间。这个总时间也加了资源调度时间。

有没有什么方法可以从API中得到持续时间,不包括资源调度时间?通常API会将此时间添加到请求的总持续时间中。

以下是网络面板表中的条目。

从上面的照片中可以看到:244.13毫秒是240毫秒(~资源运行时间)+4毫秒(~资源调度时间)之和。
如上所述,记录的值是网络表项中记录的时间与延迟时间之和,这意味着它不完全是飞行时间;我在找那个。

pinkon5k

pinkon5k1#

你可以计算出

var startTime = performance.now()

 doSomething()   // <---- measured code goes between startTime and endTime

 var endTime = performance.now()

 console.log(`Call to doSomething took ${endTime - startTime} milliseconds`)

如果您想知道在服务器收到请求之前所用的时间,请performance.now在发送请求时启动“www.example.com()”,并在服务器上函数的开头启动另一个“performance.now()”。
然后减去它们,如上面的例子所示,现在您知道了服务器接收请求所需的时间

相关问题